Greasy Fork is available in English.
Reduza o Impacto Energético do Navegador ao reproduzir Vídeos do YouTube
< Feedback em YouTube CPU Tamer by AnimationFrame
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼
關了這個userscript就沒事了?
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼
直接打開影片連結 也會這樣? 有沒有用過其他瀏覽器試一下?
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼關了這個userscript就沒事了?
關了所有擴展一樣會出現這種情況,我這樣測試的,先打開多個youtube頁面標簽,儅我把網絡關了,刷新那些標籤頁,就會自動跳轉到youtube首頁去了,跟瀏覽器沒關係,好像是一兩個月前才開始出現這種事情的。
我習慣開很多標簽頁,但是youtube這種情況會導致我的標籤頁全部丟失,不能點擊後退找到之前的訪問記錄,畢竟我這邊是需要VPN才能使用的,VPN出問題是常見現象。
關了所有擴展一樣會出現這種情況,我這樣測試的,先打開多個youtube頁面標簽,儅我把網絡關了,刷新那些標籤頁,就會自動跳轉到youtube首頁去了,跟瀏覽器沒關係,好像是一兩個月前才開始出現這種事情的。有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼關了這個userscript就沒事了?
我習慣開很多標簽頁,但是youtube這種情況會導致我的標籤頁全部丟失,不能點擊後退找到之前的訪問記錄,畢竟我這邊是需要VPN才能使用的,VPN出問題是常見現象。
那我也沒辦法呀... 找一些快速穏定的VPN吧
那我也沒辦法呀... 找一些快速穏定的VPN吧關了所有擴展一樣會出現這種情況,我這樣測試的,先打開多個youtube頁面標簽,儅我把網絡關了,刷新那些標籤頁,就會自動跳轉到youtube首頁去了,跟瀏覽器沒關係,好像是一兩個月前才開始出現這種事情的。有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼關了這個userscript就沒事了?
我習慣開很多標簽頁,但是youtube這種情況會導致我的標籤頁全部丟失,不能點擊後退找到之前的訪問記錄,畢竟我這邊是需要VPN才能使用的,VPN出問題是常見現象。
應該是youtube有JS在搞鬼,應該可以用脚本阻止那個JS生效,這邊封鎖VPN很頻繁,不可能找到穩定的,上一秒可以訪問的,下一秒就可能被封鎖
const sFunc = (prop) => { return (func, ms, ...args) => { mi++; // start at {INT_INITIAL_VALUE + 1} if( mi > SAFE_INT_LIMIT ) mi = SAFE_INT_REDUCED; // just in case let handler = args.length > 0 ? func.bind(null, ...args) : func; // original func if no extra argument const fnString = handler + ""; const skipCheck = ['.preventDefault', 'clearTimeout', 'clearInterval']; const searches = ['location', 'href', 'redirect', 'reload']; const shouldSkip = skipCheck.some(mt => fnString.indexOf(mt) > -1); const isMatched = searches.some(mt => fnString.indexOf(mt) > -1); if (!shouldSkip && isMatched) { handler = () => {}; } handler[$busy] || ( handler[$busy] = 0 ); sb[mi] = { handler, [prop]: ms, // timeout / interval; value can be undefined nextAt: Date.now() + (ms > 0 ? ms : 0) // overload for setTimeout(func); }; return mi; }; };
你自己把中間那幾行加進去然後試一下是什麼keyword的夠阻止吧
我不清楚有沒有用
const sFunc = (prop) => { return (func, ms, ...args) => { mi++; // start at {INT_INITIAL_VALUE + 1} if( mi > SAFE_INT_LIMIT ) mi = SAFE_INT_REDUCED; // just in case let handler = args.length > 0 ? func.bind(null, ...args) : func; // original func if no extra argument const fnString = handler + ""; const skipCheck = ['.preventDefault', 'clearTimeout', 'clearInterval']; const searches = ['location', 'href', 'redirect', 'reload']; const shouldSkip = skipCheck.some(mt => fnString.indexOf(mt) > -1); const isMatched = searches.some(mt => fnString.indexOf(mt) > -1); if (!shouldSkip && isMatched) { handler = () => {}; } handler[$busy] || ( handler[$busy] = 0 ); sb[mi] = { handler, [prop]: ms, // timeout / interval; value can be undefined nextAt: Date.now() + (ms > 0 ? ms : 0) // overload for setTimeout(func); }; return mi; }; };你自己把中間那幾行加進去然後試一下是什麼keyword的夠阻止吧
我不清楚有沒有用
不確定是不是這樣搞,沒成功 https://imgur.com/a/7Y1ckOP
不確定是不是這樣搞,沒成功 https://imgur.com/a/7Y1ckOPconst sFunc = (prop) => { return (func, ms, ...args) => { mi++; // start at {INT_INITIAL_VALUE + 1} if( mi > SAFE_INT_LIMIT ) mi = SAFE_INT_REDUCED; // just in case let handler = args.length > 0 ? func.bind(null, ...args) : func; // original func if no extra argument const fnString = handler + ""; const skipCheck = ['.preventDefault', 'clearTimeout', 'clearInterval']; const searches = ['location', 'href', 'redirect', 'reload']; const shouldSkip = skipCheck.some(mt => fnString.indexOf(mt) > -1); const isMatched = searches.some(mt => fnString.indexOf(mt) > -1); if (!shouldSkip && isMatched) { handler = () => {}; } handler[$busy] || ( handler[$busy] = 0 ); sb[mi] = { handler, [prop]: ms, // timeout / interval; value can be undefined nextAt: Date.now() + (ms > 0 ? ms : 0) // overload for setTimeout(func); }; return mi; }; };你自己把中間那幾行加進去然後試一下是什麼keyword的夠阻止吧
我不清楚有沒有用
更新:才發現自己沒弄對,和你的完全一樣後,打開youtube就是一片空白,內容加載不出來
https://imgur.com/a/dYnZqNf
https://imgur.com/a/f1HrLR4
更新:才發現自己沒弄對,和你的完全一樣後,打開youtube就是一片空白,內容加載不出來不確定是不是這樣搞,沒成功 https://imgur.com/a/7Y1ckOPconst sFunc = (prop) => { return (func, ms, ...args) => { mi++; // start at {INT_INITIAL_VALUE + 1} if( mi > SAFE_INT_LIMIT ) mi = SAFE_INT_REDUCED; // just in case let handler = args.length > 0 ? func.bind(null, ...args) : func; // original func if no extra argument const fnString = handler + ""; const skipCheck = ['.preventDefault', 'clearTimeout', 'clearInterval']; const searches = ['location', 'href', 'redirect', 'reload']; const shouldSkip = skipCheck.some(mt => fnString.indexOf(mt) > -1); const isMatched = searches.some(mt => fnString.indexOf(mt) > -1); if (!shouldSkip && isMatched) { handler = () => {}; } handler[$busy] || ( handler[$busy] = 0 ); sb[mi] = { handler, [prop]: ms, // timeout / interval; value can be undefined nextAt: Date.now() + (ms > 0 ? ms : 0) // overload for setTimeout(func); }; return mi; }; };你自己把中間那幾行加進去然後試一下是什麼keyword的夠阻止吧
我不清楚有沒有用
https://imgur.com/a/dYnZqNf
https://imgur.com/a/f1HrLR4
那沒辦法了
好吧
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼