jQuery click 函数里嵌套click 出问题了
时间:2011-01-04 来源:erhsh
$("#appearHiddenDiv").click(function(){
$("#hiddenDiv").css({display:"block"});
$("#closeHiddenDiv").click(function(){
//alert("erhsh test");
$("#hiddenDiv").css({display:"none"});
}); });
表面上这段代码挺合逻辑的,但是当在第二个click 中加入alert测试一下,会发现第一次点击关闭层时alert一次,但第二次开始就不止一次了:原因出在了,click事件被累积,然后作用于 $("#closeHiddenDiv") jq对象上。所以后面每操作一次,alert多一次。。。
解决方法是把click 分开写,如下:
$("#appearHiddenDiv").click(function(){
$("#hiddenDiv").css({display:"block"});
$("#closeHiddenDiv").click(function(){
//alert("erhsh test");
$("#hiddenDiv").css({display:"none"});
});
});
$("#appearHiddenDiv").click(function(){ $("#hiddenDiv").css({display:"block"}); });
$("#closeHiddenDiv").click(function(){
//alert("erhsh test");
$("#hiddenDiv").css({display:"none"});
});
相关阅读 更多 +