您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Hides "Session disconnected" popup. Reconnect is triggered by a touch
- // ==UserScript==
- // @name TradingView: hide disconnected session popup for a mobile
- // @description Hides "Session disconnected" popup. Reconnect is triggered by a touch
- // @author Konf
- // @namespace https://greasyfork.org/users/424058
- // @icon https://www.google.com/s2/favicons?sz=64&domain=tradingview.com
- // @version 1.0.0
- // @match https://www.tradingview.com/*
- // @require https://cdnjs.cloudflare.com/ajax/libs/arrive/2.4.1/arrive.min.js#sha512-wkU3qYWjenbM+t2cmvw2ADRRh4opbOYBjkhrPGHV7M6dcE/TR0oKpoDkWXfUs3HrulI2JFuTQyqPLRih1V54EQ==
- // @run-at document-body
- // @grant none
- // @noframes
- // ==/UserScript==
- /* jshint esversion: 8 */
- (function() {
- 'use strict';
- let isConnected = true;
- let popupContainer = null;
- let reconnectBtn = null;
- document.addEventListener('touchstart', () => {
- if (isConnected) return;
- isConnected = true;
- popupContainer.style.display = '';
- reconnectBtn.click();
- });
- document.arrive(
- 'div[data-dialog-name="gopro-mobile"]', {
- existing: true,
- },
- (popup) => {
- // skip a container with exact same selector.
- // the popup has two of them, no need to run twice for the same one
- if (popup.querySelector('div[data-dialog-name="gopro-mobile"]')) return;
- popupContainer = document.querySelector('div#overlap-manager-root');
- if (popupContainer.contains(popup) === false) return;
- for (const p of popup.querySelectorAll('p')) {
- if (
- p.childElementCount === 0 &&
- p.innerText === 'Session disconnected' &&
- /title.+/.test(p.className) === true
- ) {
- isConnected = false;
- reconnectBtn = popup.querySelector(
- 'button[data-overflow-tooltip-text*="Connect"]'
- );
- popupContainer.style.display = 'none';
- break;
- }
- }
- }
- );
- }());