我真的不知道的JQuery因此Im没有帮助那里,但认为Id指出的是,它似乎工作JS方式....
manifest.json的
{
"name": "TEST - Background to PopUp Event Triggering",
"version": "1.0",
"permissions": [
"tabs", "http://*/*", "https://*/*"
],
"browser_action": {
"default_title": "TEST - Background to PopUp Event Triggering",
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"background": {
"scripts": ["background.js"]
},
"manifest_version" : 2
}
popup.html
<!doctype html>
<html>
<head>
<script src="popup.js"></script>
</head>
<body>
</body>
</html>
popup.js
个
var backgroundPage = chrome.extension.getBackgroundPage();
backgroundPage.document.addEventListener('myCustomEvent', function(e) {
document.write(e.args + '\n');
})
background.js
var customEvent = document.createEvent('Event');
customEvent.initEvent('myCustomEvent', true, true);
setInterval(function() {
customEvent.args=["bunyips","smell"];
document.dispatchEvent(customEvent);
}, 3000);
你为什么不使用专用[消息传递(http://code.google.com/chrome/extensions/messaging.html)模块?通过简单的添加,您也可以支持事件。 – pimvdb 2012-07-27 18:54:03
1. jQuery是在弹出的*和*背景页面中加载的吗? 2.任何内嵌JavaScript(如果是,请阅读[CSP](http://code.google.com/chrome/extensions/contentSecurityPolicy.html))。 3.你是否在触发前约束事件? 3.为什么在使用函数时可以以非复杂的方式完成相同的事件? 'chrome.extension.getBackgroundPage()。customMethod();'和/或['chrome.extension.getViews()'](http://code.google.com/chrome/extensions/extension.html#method-getViews )。 – 2012-07-27 19:59:40
其实,@ pimvdb,这正是我所做的。 – 2012-07-27 20:51:39