繁体   English   中英

jQuery hide隐藏并立即再次显示

[英]jquery hide hides and immediately displays again

jQuery对我来说是一件奇怪的事:它不起作用,并且只将div隐藏一秒钟。 我究竟做错了什么?

有问题的代码,尽可能简单。

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>Experiment</title>
<script type="text/javascript" 
           src="http://code.jquery.com/jquery.min.js"></script>
</head>
<body>
<script>

        function doHiding() {
           $("div.thread").each(function() {
                    $(this).hide();
           });
        }


</script>
<a href="" onClick="doHiding()">Hide</a>

<div class="thread">I like trains.</div>
</body>
</html>

我在Linux上使用Chromium。 我看到div瞬间消失了,但立即又出现了。

 function doHiding() {
       $("div.thread").each(function() {
                $(this).hide();
       });
      return false;
    }

它不会再次隐藏,而是刷新页面,因为href=""链接到同一页面

注意:我想您仅出于演示目的使用过onClick="doHiding()" (否则将在jquery范围内处理您的事件)

你可以尝试改变

<a href="" onClick="doHiding()">

<a href="#" onClick="doHiding()">

请参阅: http//jsfiddle.net/aVNuf/

尝试

href="#"

在这种情况下的工作

您可以在jquery中尝试click eventinstead doing it inline

http://jsbin.com/iseref/1/edit

HTML:


<a href="#">Hide</a>
<div class="thread">I like trains.</div>

jQuery的:


 $(function(){
    $('a').on('click', function(e){
     e.preventDefault();
     doHiding();
    });
 });
function doHiding() {
  $("div.thread").each(function() {
    $(this).hide();
  });
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM