Chrome扩展程序 - jquery关闭模式弹出窗口

时间:2014-08-12 15:59:32

标签: javascript jquery google-chrome google-chrome-extension popup

我已经对chrome进行了扩展。它的目的是从弹出窗口读取数据,将该数据存储到数据库,然后关闭弹出窗口。一切都很好,但我无法关闭弹出窗口。

我的计划是使用以下代码关闭弹出窗口:

$('a.tv-dialog-title-close').trigger('click'); 

如果我在Chrome控制台中输入它会很好地关闭弹出窗口,但是当我在扩展中使用那个确切的代码时,弹出窗口不会关闭,我没有错误(奇怪)。其他一切都按计划工作,但这一行代码不起作用。任何人,有什么想法吗?

谢谢

编辑:

使用它:

var scriptNode          = document.createElement ('script');
scriptNode.textContent  = "$('a.tv-dialog-title-close').trigger('click');";
document.body.appendChild (scriptNode); 

谢谢Xan

1 个答案:

答案 0 :(得分:1)

当您在控制台中执行此代码时,您可以在页面的上下文中执行它。

当您将其作为内容脚本执行时,它在isolated context中执行,无法访问页面定义的处理程序。没有错误,因为它是一个有效的调用并触发您注册的(不存在的)处理程序。

考虑将代码注入页面的上下文,如described here