javascript - jQuery IE7 - 单击仅注册到路径中的第一个元素

标签 javascript jquery internet-explorer-6 internet-explorer-7

$('div#Categories > div.categories  a#showhide').click(function(){
        // Get the subManufacturers list
        var subCatList = $(this).parent().find('ul#hiddenSubCategories');

        // If collapsed do expand
        if (subCatList.css('display') == 'none')
        {
            subCatList.slideDown('slow');
            $(this).find('span').html('Hide');
        }
        else 
            {
            subCatList.slideUp('slow');
            $(this).find('span').html('View All');
        }

        // Stop link from doing anything
        return false;
    });

以上代码在 IE8、Firefox 和 Chrome 中完美运行(尚未在 Opera 中测试),但仅将点击功能注册到第一个匹配元素,而不是所有匹配它的元素。这是一个已知错误还是该站点独有的错误,因此是其他地方的问题。

最佳答案

$('div#Categories > div.categories a#showhide')

如果您的“a”元素有一个 id,它在页面中应该是唯一的。即,页面上不应有超过一个 ID 为“showhide”的元素。

这可能是 IE 的问题所在。尝试将 id 更改为类名。

关于javascript - jQuery IE7 - 单击仅注册到路径中的第一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1526654/

相关文章:

javascript - 我们如何使用 DOM 访问单选按钮的值?

javascript - 页面加载时选中复选框并显示输出

javascript - Jquery Blur() 对输入和 div 的效果

css - IE 6/7 大纲属性的替代方案

javascript - babel 显示对象扩展运算符意外的 token 错误

javascript - 在 javascript (lodash) 中合并部分重复的数组

javascript - jquery获取流体图像的高度

jQuery UI 对话框随机 CSS 属性

javascript - 在 Windows CE 上用 JScript 绘图

javascript - z 索引为 : 9999 being hidden by iframe with z-index: -1 IE8- 的 Div