使用jquery下拉菜单的问题

时间:2011-02-02 15:19:39

标签: jquery

基本上我有一些链接,其中包含一些其他链接,我只是试图显示父链接,当点击父链接时,子链接应该出现,当再次点击父链接时,子链接应该消失,

代码适用于第一次单击,它会打开相关的子链接,但是当我再次单击父链接时,如何使它们消失,

感谢您的帮助。

jQuery.noConflict();

jQuery(document).ready(function(e) {

jQuery('.nav-container ul.level0 li.level1 a').click(function(e) {

    e.preventDefault();
    jQuery(this).css({'background':'#000000','color':'#ffffff'});
    jQuery('.nav-container ul.level0 li.level2 a').css('display','block');

});

});

2 个答案:

答案 0 :(得分:1)

使用jquery toggle函数。

答案 1 :(得分:0)

执行此操作的一种简单方法是创建要在您单击的项目上读取的属性。

jQuery.noConflict();

jQuery(document).ready(function(e) {

    jQuery('.nav-container ul.level0 li.level1 a').click(function(e) {
        if(jQuery(this).attr('sel') != 'true')
        {
            e.preventDefault();
            jQuery(this).attr('sel','true');
            jQuery(this).css({'background':'#000000','color':'#ffffff'});
            jQuery('.nav-container ul.level0 li.level2 a').css('display','block');
        } else {
            jQuery(this).attr('sel','');
            // do close code
        }
    });

});

属性“sel”可能是“推送”或“删除”之类的其他内容......只是可能想要使用“选定”,“点击”或其他可能混淆HTML的内容。此外,我不会使用'class',因为你可以在一个对象上有多个类,它会返回它。

<div class="selected item"></div>
jQuery(this).attr('class') = 'selected item';