[解決済み] YouTubeにサインインしてください」というポップアップをブロックする方法は?[クローズド]
2022-03-04 04:06:04
質問
デスクトップパソコンで動画を見ようとすると、Youtubeに「Sign in to YouTube"」というポップアップが出て、動画が中断されるだけでなく、リンク先のタイムスタンプもリセットされてしまいます(例:「Sign in to YouTube"」)。 https://youtu.be/XXXXXXXXXXX?t=2910 ). 数ヶ月前から表示されるようになったのですが、これはクールではありません。
どうすれば無効にできるのでしょうか?
Youtubeにログインしていないし、する予定もない!
解決方法は?
拡張機能("など)を使って、以下のJavaScriptをブラウザに追加してください。 ユーザーJavaScriptとCSS Chromeの場合は"、" Greasemonkey "Firefox用)。
// SentinelJS is a JavaScript library that lets you detect new DOM nodes
const sentinel = function(){var e,n,t,i=Array.isArray,r={},o={};return{on:function(a,s){if(s){if(!e){var f=document,l=f.head;f.addEventListener("animationstart",function(e,n,t,i){if(n=o[e.animationName])for(e.stopImmediatePropagation(),t=n.length,i=0;i<t;i++)n[i](e.target)},!0),e=f.createElement("style"),l.insertBefore(e,l.firstChild),n=e.sheet,t=n.cssRules}(i(a)?a:[a]).map(function(e,i,a){(i=r[e])||(a="!"==e[0],r[e]=i=a?e.slice(1):"sentinel-"+Math.random().toString(16).slice(2),t[n.insertRule("@keyframes "+i+"{from{transform:none;}to{transform:none;}}",t.length)]._id=e,a||(t[n.insertRule(e+"{animation-duration:0.0001s;animation-name:"+i+";}",t.length)]._id=e),r[e]=i),(o[i]=o[i]||[]).push(s)})}},off:function(e,a){(i(e)?e:[e]).map(function(e,i,s,f){if(i=r[e]){if(s=o[i],a)for(f=s.length;f--;)s[f]===a&&s.splice(f,1);else s=[];if(!s.length){for(f=t.length;f--;)t[f]._id==e&&n.deleteRule(f);delete r[e],delete o[i]}}})},reset:function(){r={},o={},e&&e.parentNode.removeChild(e),e=0}}}(document);
(() => {
const isSignedIn = document.cookie.includes('APISID=');
if (isSignedIn) return;
addStyles();
addScript();
const observer = new MutationObserver(() => {
const dismissButton = document.querySelector(
'yt-upsell-dialog-renderer #dismiss-button'
);
dismissButton && dismissButton.click();
const consentBump = document.querySelector('#consent-bump');
if (consentBump) {
consentBump.remove();
const video = document.querySelector('video');
if (!video) return;
const onVideoPauseAfterConsentBump = () => {
video.play();
video.removeEventListener('pause', onVideoPauseAfterConsentBump);
setPopupContainerDisplay();
};
video.addEventListener('pause', onVideoPauseAfterConsentBump);
}
});
observer.observe(document.querySelector('ytd-app'), { childList: true });
sentinel.on('.ytp-large-play-button', (button) => {
let searchTime;
try {
searchTime = parseInt(location.search.match(/&t=(\d+)/)[1]);
} catch {}
button.click();
searchTime && (document.querySelector('video').currentTime = searchTime);
setPopupContainerDisplay();
});
function setPopupContainerDisplay() {
const popupContainer = document.querySelector('.ytd-popup-container');
popupContainer && (popupContainer.style.display = 'none');
}
function addStyles() {
const style = document.createElement('style');
style.innerHTML = /* css */ `
#consent-bump,
iron-overlay-backdrop,
yt-upsell-dialog-renderer {
display: none !important;
}
`;
document.head.append(style);
}
function addScript() {
const script = document.createElement('script');
script.innerHTML = /* javascript */ `
const player = document.querySelector('#movie_player');
player && (player.stopVideo = function() { console.log("Don't stop!"); });
`;
document.body.append(script);
}
})();
関連
-
[解決済み] AMP HTMLでYouTubeのプレイリストを表示
-
[解決済み] ffprobe または avprobe が見つかりませんでした。1つインストールしてください。
-
[解決済み] YouTubeです。YouTubeの動画からクローズドキャプションのトランスクリプトを抽出する方法は?
-
[解決済み] YouTubeにサインインしてください」というポップアップをブロックする方法は?[クローズド]
-
[解決済み] YouTubeからチャンネルIDを取得するにはどうすればよいですか?
-
[解決済み] Youtube - プレイリストをダウンロードする - youtube-dl
-
[解決済み] プレイリストに含まれる動画 ID を取得する - YouTube API v3
-
[解決済み] YouTube APIからYouTubeビデオのサムネイルを取得する方法を教えてください。
-
[解決済み] GitHub の wiki ページに YouTube の動画を埋め込むにはどうしたらいいですか?
-
[解決済み】URLからYouTubeのビデオIDを取得する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] AMP HTMLでYouTubeのプレイリストを表示
-
[解決済み] ffprobe または avprobe が見つかりませんでした。1つインストールしてください。
-
[解決済み] YouTubeです。YouTubeの動画からクローズドキャプションのトランスクリプトを抽出する方法は?
-
[解決済み] YouTubeにサインインしてください」というポップアップをブロックする方法は?[クローズド]
-
[解決済み] YouTubeからチャンネルIDを取得するにはどうすればよいですか?
-
[解決済み] Windowsファイアウォールでyoutubeの全IPアドレスをブロックさせる方法はありますか?
-
[解決済み] Youtube - プレイリストをダウンロードする - youtube-dl
-
[解決済み] プレイリストに含まれる動画 ID を取得する - YouTube API v3
-
[解決済み] YouTubeの動画をレスポンシブな幅に縮小する