显示Chrome扩展程序弹出窗口后如何触发事件?
我正在使用带有Google Chrome扩展弹出窗口的jQuery。 弹出页面使用jQuery的’document.ready’事件来触发对Web服务的请求。 问题是弹出窗口在收到响应之前不会呈现,这使得它看起来没有响应。 这是页面的大纲:
$(document).ready(function() { plugin.init(); plugin.getData(); }); ...
在 Chrome呈现弹出窗口后,是否有可用于触发’getData()’的事件? 我曾尝试使用body中的div可见性事件进行monkeying,但除了处理document.ready之外,我无法自动触发这些事件,从而导致相同的行为。
使用setTimeout
没有延迟:
...
我已经完成了我自己的扩展,它应该做的伎俩。
也许您可以与后台页面进行交互以异步获取数据:
plugin.init() chrome.extension.sendRequest({fetch: true}, function(response) { plugin.handleData(response); });
背景:
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) { if (request.fetch){ sendResponse(getData()); } });