1
2 |
$( "#appearHiddenDiv" ).click( function (){<br> $( "#hiddenDiv" ).css({display: "block" });<br> $( "#closeHiddenDiv" ).click( function (){ <br> //alert("erhsh test");<br> $("#hiddenDiv").css({display:"none"}); <br> }); }); |
表面上这段代码挺合逻辑的,但是当在第二个click 中加入alert测试一下,会发现第一次点击关闭层时alert一次,但第二次开始就不止一次了:原因出在了,click事件被累积,然后作用于 $("#closeHiddenDiv") jq对象上。所以后面每操作一次,alert多一次。。。
解决方法是把click 分开写,如下:
1
2
3
4 |
$( "#appearHiddenDiv" ).click( function (){ $( "#hiddenDiv" ).css({display: "block" }); }); <br>$( "#closeHiddenDiv" ).click( function (){ <br> //alert("erhsh test");<br> $("#hiddenDiv").css({display:"none"});<br>}); |
嵌套 click 第二层 click会叠加 导致 触发 多次,布布扣,bubuko.com
嵌套 click 第二层 click会叠加 导致 触发 多次
原文:http://www.cnblogs.com/afei-happy/p/3718674.html