Javascript IE 7 IE8上的Js脚本太慢
我创建了一个javascript脚本。这个想法是当用户将鼠标悬停在产品上时,会出现一个新元素。这是我的剧本:Javascript IE 7 IE8上的Js脚本太慢,javascript,jquery,internet-explorer,offset,Javascript,Jquery,Internet Explorer,Offset,我创建了一个javascript脚本。这个想法是当用户将鼠标悬停在产品上时,会出现一个新元素。这是我的剧本: $('.product-item').hover(function(){ var offset = $(this).offset(); $('.product-hover') .html("<div class='product-item'>" + $(this).html() + "</div>") .css({
$('.product-item').hover(function(){
var offset = $(this).offset();
$('.product-hover')
.html("<div class='product-item'>" + $(this).html() + "</div>")
.css({
display: 'block',
left: offset.left,
top: offset.top,
width: $(this).width()
});
});
$('.product item')。悬停(函数(){
var offset=$(this.offset();
$(“.产品悬停”)
.html(“+$(this).html()+”)
.css({
显示:“块”,
左:offset.left,
top:offset.top,
宽度:$(this).width()
});
});
它在Firefox和Chrome上运行良好。但在IE7和IE8上,当我尝试悬停时,浏览器会停止工作一段时间(大约10秒)。您不能单击.product hover
或其子元素(例如链接和按钮)
你能告诉我为什么以及如何解决这个问题吗。非常感谢这是我所知道的IE8和IE7导致与您刚才描述的类似行为的原因: IE8和早期版本默认将超时的阈值限制设置为5000000条语句 Microsoft发布了修补程序以更正此问题: 请注意,microsoft还指出,如果需要,哪一个注册表项可以将其增加到任何级别: 使用注册表编辑器(如Regedt32.exe)打开此项:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Styles
注意:如果“样式”键不存在,请创建一个称为“样式”的新键
在此键下创建一个名为“MaxScriptStatements”的新DWORD值,并将该值设置为所需的脚本语句数
如果您不确定需要将其设置为哪个值,可以将其设置为DWORD值0xFFFFFFFF以避免出现对话框。您使用的是哪个版本的jQuery?我使用的是jQuery 1.7.1。谢谢这是在您第一次将鼠标悬停在某个产品上还是在其他几个产品上后发生的?嗯,我经常看到性能问题时,我检查我的网站,往往是问题后,重新加载网页或重新启动浏览器或清除缓存。。。我们都喜欢IE。这种情况是在你第一次悬停在某个产品上时发生的,还是在你悬停在其他几个产品上之后发生的?-->这种情况是在我第一次悬停时发生的。谢谢