我文档后无法连接到扩展.写我的网页
could not connect to extensions after I document.write my webpage
我发现了关于"扩展无法在新选项卡中连接"的问题,解决方案是使用chrome。TAB模块,但没有找到这样的内容:
我被困在这个问题上很多天了,如果有人能帮助我,我将很高兴。
我使用扩展跨域调用,但我的网页可以连接到扩展(我认为内容脚本)只有当我的页面是一个纯html页面。如果我改变我的页面的内容使用:document.open ();document . write (html);document.close ();(当用户登录时,我这样做是为了保持我的网页的url相同)
分机没有任何响应。有没有我遗漏的解决办法?
参考代码:
PageLoader.prototype.loadHTML = function(html) {
if (history.pushState)
try {window.history.pushState(null, null, document.URL);}
catch (e) {};
document.open();
document.write(html);
document.close();
};
<<p> crossDomain代码/strong>:这个函数在点击某个按钮
时调用`window.addEventListener( "message", function(event) {
if (event.source != window ) return;
callback(event.data.text);
});
window.postMessage( { type: "com_logincat_xhr_get", url: url }, "*");
这个postMessage是完成的,但没有得到任何响应,从chrome扩展的content_script.js(只有如果我使用文档。写在我的网页,以取代内容)。content_script.js也包含eventlistener for message。
window.addEventListener( "message", function(event)
{
/* It contains piece of code to send message (chrome.runtime.sendmessage) */
};
我发现在某些地方content_script.js只在pagload和document附加。write可能会替换一些东西,但我没有找到任何解决方案。
我认为代码是正确的,因为它的工作顺利,当页面是一个简单的直接html。我不知道什么文件错了。写到我的网页我希望它会有所帮助,
谢谢你的帮助。
嘿,这就是我对上述问题的解决方案。
我发现扩展的content_script.js只在pagload时附加到DOM。并使用document.write('html')我正在修改DOM,它正在为与content_script.js的连接创建问题,所以我决定使用 document.documentElement。
使用这个,我遇到了另一个问题,那就是脚本没有得到执行,这是在var html。
我这样做了:
var scriptToInclude = document.getElementsByTagName('script');
for (var n = 0; n < scriptToInclude.length; n++)
eval(scriptToInclude[n].innerHTML);
- 清单文件中的update_url禁用了我的chrome扩展
- 为什么不'我的扩展程序不会出现在Chrome网上商店的搜索结果中
- 用jQuery扩展我的类
- 谷歌扩展:如何在弹出窗口中按下按钮时在我的javascript文件中运行函数
- 浏览器扩展程序来跟踪我的谷歌活动
- 为什么我的谷歌浏览器扩展程序在谷歌浏览器版本 41.0.2272.89 中不起作用
- 尝试从我的 chrome 扩展程序访问 gmail 中的 iframe 时出现未定义的错误,但不是从开发者控制台访问
- 要将 Chrome 扩展程序更改为 manifest_version 2,需要执行哪些操作?我的扩展程序只是在弹出窗口中
- 如何缩小我的谷歌chrome扩展's的javascript文件
- 如何在不接触类代码的情况下扩展我预先存在的javascript类
- 为什么我的firefox扩展javascript不能访问opener窗口,也看不到window.name
- 为什么我的 init() 函数没有运行?(安装 Firefox 扩展时自动添加工具栏按钮,但仅在首次运行时)
- 我的镀铬扩展程序没有't向控制台显示错误,但它显示日志
- chrome扩展///我的代码运行了不止一次
- 扩展我的JavaScript代码
- 不能用Prototype扩展我的javascript对象
- 如何在页面加载扩展我的Div
- 如何在脸书上扩展我的视频.js播放器
- 为什么灯箱扩展我的网页
- 我如何让pixi扩展我的画布并放大