我在开发Chrome扩展时遇到了问题。在Chrome扩展中加载内容脚本
我有内容的脚本:
window.addEventListener("load",function(){
var html = document.getElementsByTagName('html')[0];
var title = document.getElementsByTagName('title')[0].innerHTML;
if(html){
chrome.extension.sendRequest({akce: 'content', title: title},function(response){});
alert(title);
}
},false);
然后我有一个BG页:
chrome.extension.onRequest.addListener(function(request,sender,sendResponse){
if(request.akce == 'content'){
console.log(request.title);
}
});
的问题是,当我开始输入到地址栏,我的内容脚本加载在网站上这是自动完成列表中的第一个。正如您在下面的屏幕截图中看到的,内容脚本在我点击地址栏中的输入之前被加载,并在我尚未加入的网站上加载。
我不知道发生了什么事。请帮助我。
得到引荐,但是这不是我有用的,因为我想我的分布扩展的客户,我认为我不能禁用客户机上的“即时浏览” :( – tomash
是的,你是对的,但我不喜欢这个选项的铬,我相信这是一个谷歌必须解决的问题,因为开发人员在这里不能做任何事情。也许这是一件好事,不是加载扩展,而即时浏览打开并加载后,用户点击输入,但我相信这是谷歌必须解决 – haynar
还有一件事,我不知道,但也许有一些铬特定的DOM事件是可能的为了解决这种情况并处理这种情况,这将是另一个好办法...... – haynar