jquery显示div但后来没​​有隐藏它

时间:2011-08-01 15:40:48

标签: jquery

以下是我的div:

<div id="popup" onClick="hidePopup" style="display:none; position: absolute; 
top: 30px; 
left: 50%; margin-left: -85px; height: 185px; width: 170px; background-color:grey; 
z-index:99; border-style:solid; border-width:1px; 
-webkit-border-radius: 8px;">Message</div>'

这是我的两个功能:

   function popup(){
     $('#popup').show();
    }
    function hidePopup(){
     $('#popup').hide();
    }

函数弹出工作正常,并且上面的div。但是当我点击abive div时,hidePopup无法隐藏div。我的代码中是否存在简单错误,或者还有其他原因吗?

由于

8 个答案:

答案 0 :(得分:1)

onClick="hidePopup"更改为onClick="hidePopup()"

答案 1 :(得分:1)

为什么不把它重写为

<div id="popup">Message</div>使用此jQuery:


$("#popup").click(function() {
   $(this).toggle();
});

答案 2 :(得分:1)

尝试使用这样的切换功能:

function popup(){
 $('#popup').toggle();
}

这样您就不必具有显示和隐藏的不同功能。

答案 3 :(得分:0)

<div id="popup" onClick="hidePopup();" style="display:none; position: absolute; 

而不是

<div id="popup" onClick="hidePopup;" style="display:none; position: absolute; 

请注意这些括号()

答案 4 :(得分:0)

你的onclick事件后你缺少圆括号。以下代码将起作用:

<div id="popup" onClick="hidePopup()" style="display:none; position: absolute; 
top: 30px; 
left: 50%; margin-left: -85px; height: 185px; width: 170px; background-color:grey; 
z-index:99; border-style:solid; border-width:1px; 
-webkit-border-radius: 8px;">Message</div>

hidePopup()是变更

答案 5 :(得分:0)

我在代码中找不到任何错误。代码中调用show()的部分在哪里?

尝试在onClick =“hidePopup”之后添加括号()onClick =“hidePopup()”

希望这有帮助

答案 6 :(得分:0)

我认为您需要在onClick中提供更多详细信息,请尝试以下操作:

<div id="popup" onClick="hidePopup();" style="display:none; position: absolute; 
top: 30px; 
left: 50%; margin-left: -85px; height: 185px; width: 170px; background-color:grey; 
z-index:99; border-style:solid; border-width:1px; 
-webkit-border-radius: 8px;">Message</div>'

答案 7 :(得分:0)

摆脱onclick并在你的document.ready函数中

$("#popup").click(function(){
 $(this).toggle();

}

根据当前元素的不同,这将从隐藏更改为可见或可见隐藏。