开发者社区> 问答> 正文

调用toggle()方法的元素为什么会自动消失?

test.html的代码如下:

<html>
<head>
    <script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
    <style type="text/css">
        .bi{
            background-color: blue
        }
    </style>
</head>
<body>
    <div>
        <button id="btn" style="display:block">click</button>
    </div>
    <div id="div2" style="height:200px;width:200px;border:1px solid red">
    </div>
<script type="text/javascript">
$(function(){
    $("#btn").toggle(function(){
        $("#div2").addClass("bi");
    },function(){
        $("#div2").removeClass("bi");
    }
    );
});
</script>
</body>
</html>

在浏览器中打开test.html时,id是btn的元素会自动消失,toggle()中的函数自动调用完成,这是为什么?

展开
收起
小旋风柴进 2016-03-26 08:35:48 2274 0
1 条回答
写回答
取消 提交回答
  • 因为你的jquery是用一个立即执行的函数表达式包括的,就是自动立即执行。

    toggle()方法好像已经改了,改成只是单纯切换display的block或none。

    这个是jquery官网给出的解释:

    Description: Display or hide the matched elements.

    2019-07-17 19:15:06
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载