我的页面中有一个小代码
<script type="text/javascript">
function doPost() {
document.forms["form"].submit();
}
function Func1Delay()
{
setTimeout("doPost()", 0);
}
....
<body onload="Func1Delay()">
我在控制台中看到这个错误
Uncaught TypeError: Cannot call method 'create' of undefined
在右边,这是由于 chrome 扩展 MeasureIt。当我禁用它时,我的脚本有效。这个问题有解决方法吗?
最佳答案
简短的回答是肯定的。 但完整的答案是否定的,它不是 Chrome,而是一些干扰您代码的扩展程序。 例如:
1) 内容脚本可以添加监听器并使用 stopPropagation。在这种情况下,您的代码将不会收到该事件。我可以想象一个更具体的场景,内容脚本失败并因此阻止其他监听器执行。
2) 内容脚本可能会扰乱您页面的元素。它可以删除一些,并添加它的 owm。如果扩展添加一个 SCRIPT 元素,其中的 var 或函数的名称与您的完全相同,会发生什么情况?
我们无法确定扩展程序的代码编写得有多“好”。
顺便说一下,有很多 Chrome 的扩展会干扰页面。几个月前,针对 Chrome 的 Skype 扩展被发现干扰和破坏该浏览器中的网页和视频播放。
关于javascript - Chrome 是否会因为其扩展而停止运行某些 javascript 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10827636/