YouTube CPU Tamer by AnimationFrame

Reduce Browser's Energy Impact for playing YouTube Video

< Feedback on YouTube CPU Tamer by AnimationFrame

Question/comment

Deleted user 103157
§
Posted: 2021-09-10

有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼

§
Posted: 2021-09-13
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼

關了這個userscript就沒事了?

§
Posted: 2021-09-13
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼

直接打開影片連結 也會這樣? 有沒有用過其他瀏覽器試一下?

Deleted user 103157
§
Posted: 2021-09-14
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼
關了這個userscript就沒事了?

關了所有擴展一樣會出現這種情況,我這樣測試的,先打開多個youtube頁面標簽,儅我把網絡關了,刷新那些標籤頁,就會自動跳轉到youtube首頁去了,跟瀏覽器沒關係,好像是一兩個月前才開始出現這種事情的。

我習慣開很多標簽頁,但是youtube這種情況會導致我的標籤頁全部丟失,不能點擊後退找到之前的訪問記錄,畢竟我這邊是需要VPN才能使用的,VPN出問題是常見現象。

§
Posted: 2021-09-14
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼
關了這個userscript就沒事了?
關了所有擴展一樣會出現這種情況,我這樣測試的,先打開多個youtube頁面標簽,儅我把網絡關了,刷新那些標籤頁,就會自動跳轉到youtube首頁去了,跟瀏覽器沒關係,好像是一兩個月前才開始出現這種事情的。

我習慣開很多標簽頁,但是youtube這種情況會導致我的標籤頁全部丟失,不能點擊後退找到之前的訪問記錄,畢竟我這邊是需要VPN才能使用的,VPN出問題是常見現象。

那我也沒辦法呀... 找一些快速穏定的VPN吧

Deleted user 103157
§
Posted: 2021-09-14
有没有办法阻止这种情况,网络不好的时候打开油管任何页面,会自动跳转到油管首页,能不能防止他跳转到首页,继续留在当前页面。不然真的影响挺大的,没网络或者网络断了,打开浏览器就会把所有之前的油管标签页,给跳到首页去了,还不能点击后退找到之前的记录返回去。应该是某个JS在搞鬼
關了這個userscript就沒事了?
關了所有擴展一樣會出現這種情況,我這樣測試的,先打開多個youtube頁面標簽,儅我把網絡關了,刷新那些標籤頁,就會自動跳轉到youtube首頁去了,跟瀏覽器沒關係,好像是一兩個月前才開始出現這種事情的。

我習慣開很多標簽頁,但是youtube這種情況會導致我的標籤頁全部丟失,不能點擊後退找到之前的訪問記錄,畢竟我這邊是需要VPN才能使用的,VPN出問題是常見現象。
那我也沒辦法呀... 找一些快速穏定的VPN吧

應該是youtube有JS在搞鬼,應該可以用脚本阻止那個JS生效,這邊封鎖VPN很頻繁,不可能找到穩定的,上一秒可以訪問的,下一秒就可能被封鎖

§
Posted: 2021-09-15

    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的夠阻止吧
我不清楚有沒有用

Deleted user 103157
§
Posted: 2021-09-16
    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

Deleted user 103157
§
Posted: 2021-09-17
Edited: 2021-09-17
    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

更新:才發現自己沒弄對,和你的完全一樣後,打開youtube就是一片空白,內容加載不出來
https://imgur.com/a/dYnZqNf
https://imgur.com/a/f1HrLR4

§
Posted: 2021-09-17
    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
更新:才發現自己沒弄對,和你的完全一樣後,打開youtube就是一片空白,內容加載不出來
https://imgur.com/a/dYnZqNf
https://imgur.com/a/f1HrLR4

那沒辦法了

Deleted user 103157
§
Posted: 2021-09-19

好吧

Post reply

Sign in to post a reply.