Twitter用のChrome拡張機能を開発しようとしています。そして、私はこの問題に遭遇し、オンラインで見つけることができるすべてを試しましたが、それでも問題は解決しませんでした.
詳細な説明はこちらです。
content_scripts を使用して独自の js コードを挿入し、Twitter Web ページの div を操作します。
ソースコードは次のようになります。
マニフェスト.json
"content_scripts": [ {
"js": [ "jquery.js", "code.js" ],
"matches": [ "http://*.twitter.com/*", "https://*.twitter.com/*" ]
} ],
code.js
function JSCode()
{
/* my own jquery code here */
}
$(document).ready(function() {
var node = document.createElement('script');
var toInject = "("+JSCode.toString()+")();";
node.innerText = toInject ;
document.querySelector('body').appendChild(node);
});
そしてソースコードのtwitterページをデバッグし、
<script>/*my own jquery code here */</script>
</body>
常に body タグの一番下にあります。
Chrome のアドレス バーに twitter.com または twitter.com/user_name と入力してヒット アンド ゴーすると、JavaScript は正常に動作します。
すでに twitter.com Web ページを開いている場合 (最初に Web ページをロードするときに js コードが機能します)、自分のプロファイル リンクをクリックして、同じ chrome Web ページにある自分の twitter ページにリダイレクトしますが、javascript が実行されていないようです。 (jsコードはまだ本文の最後に追加されていますが)、Webページ全体をリロードするだけで、JavaScriptが再び機能します。
これがなぜなのか、どうすれば解決できるのかについてのアドバイスはありますか? ありがとうございました