1

自分用に Chrome 拡張機能を作成しようとしています。これにより、Twitch.tvの任意の種類のチャンネルにアクセスすると、チャットが自動的に非表示になります。

私は Firebug でそれを見てきましたtoggle_chat()。コンソールにそれを入力すると、チャットが表示されなくなります。

私のユーザースクリプトファイルに、私は書いた

window.onload = function() {
toggle_chat();
}

しかし、それは言います

Uncaught ReferenceError: toggle_chat is not defined" が Twitch チャンネルをロードすると、コンソールに表示されます。

これを機能させる方法はありますか?

4

2 に答える 2

3

これはタイミングとは関係ありません。Chrome 拡張機能とコンテンツ スクリプトは で実行されますisolated world。つまり、機能を含むページの JavaScript にはアクセスできません。content script要素を追加して、必要なページ機能を呼び出すようにすることもでき<script>ますが、要素のクリックをシミュレートする方がはるかに簡単#right_closeです。次のように、純粋な Javascript を使用してこれを行うことができます。

window.onload = function(){
  var evObj = document.createEvent('Events');
  evObj.initEvent('click', true, false);
  document.querySelector('#right_close').dispatchEvent(evObj);
}
于 2013-04-29T22:05:49.177 に答える