jQuery在隐藏代码后重新显示div

时间:2012-08-07 23:39:28

标签: jquery css

这是对已修复的预览代码问题的更新。我现在正在做的是添加第二个可点击链接li来隐藏 mykadd div并重新显示mykink。

这里是我正在尝试做的一个示例...... http://jsfiddle.net/eWtaz/1/它的工作方式有点但是它的错误

<li id="myklnk2">Show Main System</li>
<li id="myklnk1">Un/Select system</li>

<script type="text/javascript">
$(document).ready(function(){
    $(".mykadd").hide();    
    $("#myklnk2").on("click", function(){
        $(".mykink, .mykadd").slideToggle();

    $("#myklnk1").on("click", function(){
        $(".mykadd, .mykink").slideToggle();
    });
    });
});
</script>

4 个答案:

答案 0 :(得分:1)

只需修正关闭});

的位置即可

jsFiddle

$("#myklnk2").on("click", function(){
    $(".mykink, .mykadd").slideToggle();
});   // put it here

$("#myklnk1").on("click", function(){
    $(".mykadd, .mykink").slideToggle();   
});
// not here

答案 1 :(得分:1)

难道你不能这样做吗?

<li id="myklnk2">Show Main System</li>
<li id="myklnk1">Un/Select system</li>

<script type="text/javascript">
$(document).ready(function(){
    $(".mykadd").hide();    
    $("#myklnk2").on("click", function(){
        $(".mykink").slideUp();
        $(".mykadd").slideDown();
    });
    $("#myklnk1").on("click", function(){
        $(".mykadd").slideUp();
        $(".mykink").slideDown();
    });
});
</script>

现在你的方式,$(“#myklnk1”)点击事件嵌套在$(“#myklnk2”)点击事件中。

答案 2 :(得分:1)

})位置错误 您可以做的其他事情是选择li绑定事件并使用display: none代替。

<强> HTML

$(document).ready(function(){   
    $("#myklnk2, #myklnk1").on("click", function(){
        $(".mykink, .mykadd").slideToggle();
    });
});​

<强> CSS

.mykadd {
    display: none;
}

demo

答案 3 :(得分:0)

请勿在第一个单击处理程序中附加您的第二个单击事件,因为这会在事件传播之前发生,这会触发您的第二次单击。