谷歌chrome扩展代码,javascript代码中的异常行为

时间:2015-09-02 23:09:02

标签: javascript html google-chrome-extension content-script

首先要做的事情:

  • 我正在开发谷歌浏览器
  • 的扩展程序
  • 我已经做了足够的研究,如何建立一个,并得到我的 清单文件和权限都正确
  • 我正在使用browserAction模型,并且每次点击browserAction图标时都会显示我的popup.html页面所有设置
  • 出于调试目的,我在代码中使用了很多window.alert弹出窗口
  • popup.html文件包含对javascript文件的调用" call_content_script.js"然后调用" content_script.js"文件。
  • popup.html文件还包含指向另一个second_popup.js文件的链接

这些是我的代码:


popup.html

<!doctype html> 
<html> 
    <head>
    </head>

    <body>
        <h1>My Hello World Extension!</h1>
        <a href="second_popup.html">go to some other page</a>
        <script src="../javascript/call_content_script.js"></script>
        <!-- JAVASCRIPT FILES HAVE TO BE RUN FROM A SEPERATE 
              SCRIPT FILE. THIS IS A SECURITY FEATURE, ADDED
              IN MANIFEST VERSION 2.0
        -->
    </body>

</html>

second_popup.html

<!doctype html>
<html>
<body>
    <p>nothing to see here</p>
    <a href="popup.html">go back</a>
</body>
</html>

call_content_script.js

window.alert('call content script working');

chrome.tabs.query({"active":true},function(tabs) {
    window.alert(tabs[0].id);
    chrome.tabs.executeScript({file:"content_script.js"});
    //REQUIRES "permissions" : "activeTab"
});

window.alert('exiting call_content_script');

content_script.js

window.alert('content script working');

现在,我面临两个问题:

  1. 弹出每个警报窗口,但content_script.js中调用的窗口除外。
  2. 点击popup.html到second_popup.html的链接后,会弹出一段短时间,然后弹出窗口关闭。
  3. 我不明白为什么这是hapenning。


    提前致谢

0 个答案:

没有答案