我做了什么让 IE 生气了?

发布于 2024-12-25 05:58:44 字数 253 浏览 0 评论 0原文

所以我添加了一点 jQuery,现在当我尝试加载页面时 IE 崩溃得很严重。其他浏览器似乎没问题。 IE 的行为方式与我过去意外创建无限循环时的行为方式大致相同,但由于它不会对其他浏览器造成问题,所以我对实际原因感到有点困惑。

$(window).resize(function(){
sizeOfResize = $('#main').width()*.9;
$('#news p').width(sizeOfResize);   
})

So I added a little bit of jQuery and now IE crashes pretty hard when I try to load my page. Other browsers seem fine. IE behaves much in the same manner as when I've accidentally created an infinite loop in the past, but since it's not causing problems for other browsers I'm a little confused as to what the actual cause is.

$(window).resize(function(){
sizeOfResize = $('#main').width()*.9;
$('#news p').width(sizeOfResize);   
})

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

a√萤火虫的光℡ 2025-01-01 05:58:44

我注意到两件事——可能是也可能不是。正如我们大家所评论的,无需您做太多事情,IE 就会生气。

无论如何,说到重点。
在您的示例代码中,函数末尾没有分号。我不知道这是否会导致 IE 生气,但值得一试。
IE 对逗号和分号非常敏感,并且不像其他浏览器那样宽容。

如果上述方法不起作用,请查看是否需要 0.9 以外的数字 - 也许可以尝试使用整数。我想它可能不喜欢。在 .9 中 - 如果是这种情况,你将不得不改变你的数学计算方式。

2 things I noticed - which may or may not be the case. As we all commented, IE gets angry without you having to do much.

Anyways, to the point.
In your example code, you don't have a semi-colon at the end of the function. I don't know if that would cause IE to be angry or not, but it's worth a try.
IE is very touchy about commas and semi-colons and not in the least forgiving like the other browsers.

If the above doesn't work, see if it will take a number other than .9 - maybe try a whole number. I'm thinking it may not like the . in the .9 - if that's the case, you'll have to change how you do the math.

早乙女 2025-01-01 05:58:44

这不是直接的答案,但通常我测试代码的方式是从简单的警报开始,然后变得更复杂。例如,尝试从以下代码开始:

$(window).resize(function(){
     alert("TEST");   
})

如果这没有破坏它,则添加原始示例的下一部分:

 $(window).resize(function(){
sizeOfResize = $('#main').width()*.9;
alert("TEST");   
})

如果这没有破坏它,请添加最后一点:

$(window).resize(function(){
sizeOfResize = $('#main').width()*.9;
$('#news p').width(sizeOfResize);  
   alert("test"); 
})

这不会解决您的问题,但是它应该指向破坏它的特定代码行。

这里还有一个类似的问题和答案:

Cross-browser window resize event - JavaScript /jQuery

希望有帮助

Not a direct answer, but usually the way I test my code is to start with simple alerts and get more complex. for example, try starting with this code:

$(window).resize(function(){
     alert("TEST");   
})

If that doesn't break it, then add the next part of your original sample:

 $(window).resize(function(){
sizeOfResize = $('#main').width()*.9;
alert("TEST");   
})

And if that doesn't break it, add the last bit:

$(window).resize(function(){
sizeOfResize = $('#main').width()*.9;
$('#news p').width(sizeOfResize);  
   alert("test"); 
})

This won't fix your problem, but it should point to the specific line of code that is breaking it.

Here is a similar question and answer as well:

Cross-browser window resize event - JavaScript / jQuery

Hope that helps

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文