jQueryIE6和7错误
我有以下代码:jQueryIE6和7错误,jquery,jquery-selectors,Jquery,Jquery Selectors,我有以下代码: $('#main-nav a').mouseover(function() { var name = $(this).attr("rel"); $("#subnav ul." + name).show(); }) 基本上,当链接悬停在上面时,代码只获取链接的rel属性的值,然后使任何具有相同值的类的ul出现 此代码在除IE6和IE7之外的任何其他浏览器中都可以正常工作,这会导致以下错误: 引发异常但未捕获(在我的jquery 1.4.4文件中) 对象不支持此属性
$('#main-nav a').mouseover(function() {
var name = $(this).attr("rel");
$("#subnav ul." + name).show();
})
基本上,当链接悬停在上面时,代码只获取链接的rel属性的值,然后使任何具有相同值的类的ul出现
此代码在除IE6和IE7之外的任何其他浏览器中都可以正常工作,这会导致以下错误:
谢谢据我所知,
'#主导航a'
返回一组
对象。您是否尝试过对每个迭代结果
$.each($('#main-nav a'), function (index, element) {
element.mouseover(function() {
var name = $(this).attr("rel");
$("#subnav ul." + name).show();
});
});
您需要首先通过打印检查字符串和变量的连接是否始终成功,以创建选择器。警报(名称)是正确的,它可以是三个不同的值(sat、usa或jap),因此当这些值连接在一起时,选择器将是#subnav ul.sat,#subnav ul.usa或#subnav ul.jap这是我想要的选择器。如果我只是手动输入其中的一个选择器,而没有弄乱变量,我就不会得到错误,所以我很困惑!实际上,它在IE7中修复了它,但是IE6仍然得到了错误!我非常讨厌那个浏览器!jQuery内部不是这样做的吗?@geoffs3310:我更改了迭代方法,如果新方法有效,试试看。如果没有,那么你可能需要一步一步地解决这个问题。在IE6中启动并运行jQuery之后,从下到上验证代码的正确性——首先测试选择器,然后测试集合的大小,然后尝试让迭代工作。。你明白了。