jQuery 和 IE7 跨浏览器错误
$("body").delegate('area[id=area_kontakt]','mouseover mouseleave', function(e){
if (e.type == 'mouseover') {
$("#kontakt_tip").css('display','block');
} else {
$("#kontakt_tip").css('display','none');
}
});
为什么这段代码在 IE7 中不起作用?在IE8、FF、Ch中一切正常。有什么帮助吗?
问候。
$("body").delegate('area[id=area_kontakt]','mouseover mouseleave', function(e){
if (e.type == 'mouseover') {
$("#kontakt_tip").css('display','block');
} else {
$("#kontakt_tip").css('display','none');
}
});
Why this code doesn't work in IE7? In IE8, FF, Ch everything is OK. Any help?
Regards.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
检查了您的网站后,我找到了问题的原因。
如果没有看到该网站,没有人可以解决这个问题,因为该问题与您在问题中提供的代码无关。
在
functions.js
中,您会遇到几次这样的情况(我已将其删减):问题在于尾随逗号; 它会破坏 IE7 及更早版本 。
Having examined your site, I've found the cause of the problem.
Nobody could have worked this out without seeing the site, because the problem had nothing to do with the code you've provided in your question.
In
functions.js
, you have this a few times (I've trimmed it down):The problem is that trailing comma; it breaks IE7 and older.
我很确定这是因为 IE7 不支持属性选择器:
[id=area_kontakt]
,您必须使用 IE7 的类名/Id 名称才能在 jQuery 中支持它。I'm pretty sure it's because IE7 doesn't support atrribute selectors:
[id=area_kontakt]
, You'll have to use a class name/Id name for IE7 to support it inside your jQuery.