在过去的几周里,我和我的用户收到了以下消息。仅在 Firefox 中发生。
警告:无响应的脚本
此页面上的脚本可能正忙,或者它可能已停止响应。您现在可以停止 >script,在调试器中打开脚本,或者让脚本继续运行。
脚本:http ://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js:6803
我尝试用 1.7.2 替换 jQuery 1.7.1,但没有帮助。仍然收到消息。该行引用了一个名为 getWidthOrHeight 的函数。在调试时,我无法找到代码的任何问题。
function getWidthOrHeight( elem, name, extra ) {
// Start with offset property
var val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
i = name === "width" ? 1 : 0,
len = 4;
if ( val > 0 ) {
if ( extra !== "border" ) {
for ( ; i < len; i += 2 ) {
if ( !extra ) { //This is the problematic line causing the unresponsive error.
val -= parseFloat( jQuery.css( elem, "padding" + cssExpand[ i ] ) ) || 0;
}
if ( extra === "margin" ) {
val += parseFloat( jQuery.css( elem, extra + cssExpand[ i ] ) ) || 0;
} else {
val -= parseFloat( jQuery.css( elem, "border" + cssExpand[ i ] + "Width" ) ) || 0;
}
}
}
return val + "px";
}
此外,这个问题开始时没有对调用 jQuery 的代码进行任何更改。
当我用 jQuery 1.7.1 尝试它时,我在第 6778 行得到了错误,这与上面提到的相同。
该错误通常出现在重新启动后加载时第一次运行浏览器时。
这可能是由于 Firefox 的问题造成的吗?我该如何解决这个问题?谢谢!
找到了 Mozilla 的这篇文章,但没有解决。http://support.mozilla.org/en-US/kb/warning-unresponsive-script