我正在尝试为 twitter 开发一个 chrome 扩展。我遇到了这个问题并尝试了我在网上找到的所有方法,但仍然没有解决问题。
这是详细的解释。
我使用 content_scripts 注入自己的 js 代码来操作 twitter 网页上的 div。
源代码是这样的:
清单.json
"content_scripts": [ {
"js": [ "jquery.js", "code.js" ],
"matches": [ "http://*.twitter.com/*", "https://*.twitter.com/*" ]
} ],
代码.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);
});
我调试源代码推特页面,
<script>/*my own jquery code here */</script>
</body>
始终位于正文标签的底部。
如果我只是在 chrome 地址栏中键入 twitter.com 或 twitter.com/user_name,然后点击即可,javascript 工作正常。
如果我已经在 twitter.com 网页上(第一次加载网页时 js 代码有效),我点击我自己的个人资料链接并重定向到我自己的 twitter 页面,该页面将在同一个 chrome 网页中,javascript 似乎没有被执行(虽然 js 代码仍然附加在正文底部),只有重新加载整个网页才能使 javascript 再次工作。
关于为什么会这样以及如何解决这个问题的任何建议?谢谢