这个切换需要帮助,几乎没有变化

时间:2013-04-05 08:26:23

标签: javascript jquery css toggle

在下面这段代码中我只想要当我点击面板内的任何内容(面板中包含p标签的内容)时,不应该滑动面板,直到使用面板或其他地方的点击而不是面板中的子元素p ,请参阅小提示中的html获取帮助,如果使用了除此之外的click事件,请单击try不应关闭该面板。这个剧本早些时候曾和普拉文先生一起帮助过我。

代码是

$(document).ready(function () {
    $("#toggle li > .panel").hide();
    $('.plusminus').html('+');

    $('#toggle li').click(function () {
        if( !$(this).children('.panel').is(":visible") ) {
            $("#toggle li > .panel").slideUp();
            $('.plusminus').html('+');
        }
        a = $(this).children(".plusminus");
        $(this).children(".panel").slideToggle('fast', function(){
            a.html($(this).is(":visible") ? '--' : '+');
        });
    });

    $("body").click(function(event){
        if ($(event.target).closest("ul").attr('id') != "toggle") {
            $("#toggle li > .panel").slideUp();
            $('.plusminus').html('+');
        }
    });
});

小提琴演奏是

http://jsfiddle.net/praveenscience/Ss3xU/26/

1 个答案:

答案 0 :(得分:1)

删除$("#toggle li > .panel").hide();上的document load,以便在load上打开面板

添加$("#toggle li > .panel").click(function(event){ event.stopPropagation(); }); 单击面板内部时,将使下拉列表不关闭