概要
youtubeを再生しているときに、広告の再生が始まるときがあります。この時、しばらくすると広告スキップボタンが表示されるときもあります。
これは、クリックすると元の動画の再生に戻ります。このクリック操作を自動化し、クリックをしなくても、元の動画の再生に戻るようにしました。このプラグインは、「youtubeプラグイン v4.0です。」近日中には公開予定です。現在、Chromeウェブストアで審査中です。いましばらく、お待ちください。
審査が通過しました。
機能詳細について
このプラグインはyoutubeの動画再生ページで動作します。URLは"https://www.youtube.com/watch?v=....."です。
以下のコードは広告スキップボタンのクリックイベント代行処理の抜粋です。
setInterval(()=>{
//広告スキップボタン
//これは、広告スキップボタンが表示されたときに、自動的に元の再生に戻る
//処理です。クリックは不要です。
if($(".ytp-ad-skip-button").length!==0){
//alert("広告スキップ");
let ee = jQuery.Event('click');
$('.ytp-ad-skip-button').trigger(ee);
}
},6000);
プラグインのスクリプトで、content.jsはそのページのDOMにアクセスできますので、広告スキップボタン要素が表示されたかを先にチェックします。
プラグインでjqueryをインストールしていますので、表示確認は、次のスクリプトで行います。
$(".ytp-ad-skip-button").lengthで長さが0でなければ、表示されていることになります。
次に、クリックイベントの代わりに、trigger()関数を使います。trigger()関数を使うことで、youtubeページ側のclickイベントスクリプトを使わなくても、その処理を起動することができます。直接、clickイベントスクリプトを呼び出さなくてもtrigger()が代行してくれます。
直接、youtubeページのスクリプトを編集することはできませんので、この方法で行えば同様の処理を実行できます。
このスクリプトでは、6秒のインターバルタイマーを使っています。
6秒毎に、「広告スキップ」ボタンをチェックしています。6秒の意味は、そのくらいに設定すると「広告スキップが」見えて、その後、削除されて本来の再生が続行されることを確認できるためです。いずれは、もっと短くしたいと思います。
広告スキップでストレスフリー
今の時代は、どこのサイトを開いても広告がやたらに多く、間違えてクリックしてしまうことが多くなりました。また、本来の記事かと思わせるような巧妙なテクニックで誘導してきます。この誘いには絶対乗りたくありません。ユーザーも賢くならないといけません。
あとがき
長い再生時間の動画には広告が入るようです。そのため、この広告スキップボタンをクリックする回数はかなりの負担になります。
そのため、このプラグインをインストールしておけば、自動的にスキップしてくれますので、その手間は省けます。
審査が通過しましたら、インストールして試してみるのもいいかと思います。
審査が通過しましたので、お試しください。