我正在尝试创建一个chrome扩展,它在后台访问一个网站,从加载的页面中获取一个元素,然后根据该元素更改徽章文本。
到目前为止,我在background.js中有这样的代码:
function updateIcon(text) {
chrome.browserAction.setBadgeText({"text": text});
}
chrome.browserAction.onClicked.addListener(function() {
$.get(link, function(data) {
myText = $(data).filter("#myElement").html()
updateIcon(myText);
});
});
这在我的test.html页面上运行得很好:
<html>
<button id="myElement">Test</button>
</html>
但我最近发现,它在我打算使用的页面上不起作用的原因是因为"myElement“是通过ajax加载的,并且不在页面加载的dom中。即使通过ajax加载,也有什么方法可以获取该元素吗?现在,我的代码返回一个“未定义”的值。
发布于 2017-05-07 00:15:35
最后,我听从了wOxxOm的建议,重现了站点的AJAX请求,它成功了。谢谢。
https://stackoverflow.com/questions/43819242
复制相似问题