这个为什么选择出现问题? 就是last为什么选择的不是我想要的 明明是有三个button却选择第二个为last

来源:1-2 jQuery中隐藏元素的hide方法

qq_世界左右丈量阳光_0

2017-10-21 15:01

<body>

    <h2>hide</h2>

    <div class="left">

        <h4>测试一</h4>

        <div id="a1">hide操作</div>

        <button>直接hide</button>

        <script type="text/javascript">

        //点击buttom1 直接隐藏

        $("button:first").click(function() {

            $("#a1").hide();

        });

        </script>



        <h4>测试一</h4>

        <div id="a2">hide动画操作</div>

        <button>hide带动画</button>

        <script type="text/javascript">

        //点击buttom2 执行动画隐藏

        /*$("button:last").click(function() {

            $("#a2").hide({

                duration: 3000,

                complete: function() {

                    alert('执行3000ms动画完毕')

                }

            })

        });

        */

        $("button:last").css("color","red");

        </script>

        <h4>测试2</h4>

        <div id="a3">测试动画</div>

        <button>点击测试</button>

        <script type="text/javascript">

            $("button:eq(2)").click(function(){

                $("#a3").hide("slow");

            })

          $("button:last").css("color","blue"); 

           $("button:first").css("color","green");

        </script>

        

        

        

</div>

        


</body>


</html>


写回答 关注

4回答

  • qq_杀意隆_0
    2017-10-21 16:34:53
    已采纳

    是的。或者第2个脚本这样写,等全部文档加载完再执行js代码。

     <script type="text/javascript">
            //点击buttom2 执行动画隐藏
            /*$("button:last").click(function() {
                $("#a2").hide({
                    duration: 3000,
                    complete: function() {
                        alert('执行3000ms动画完毕')
                    }
                })
            });
            */
            
            //等文档加载完再执行此js代码
            $(document).ready(function(){
                
                $("button:last").css("color","red");
            })
            </script>


    qq_世界左...

    非常感谢!

    2017-10-22 15:23:42

    共 1 条回复 >

  • 妮妮w
    2018-10-07 14:08:42

     $("button:eq(2)").click(function(){   这句好像是选的第三个button 吧  eq(index)  index 从0 开始

  • qq_杀意隆_0
    2017-10-21 16:06:59

    看你都学js这么长时间了,照理这点你应该早就知道了啊

    qq_世界左...

    这个javascript位置有关系吗?它放的位置只读前面的数据 不是全局?

    2017-10-21 16:26:32

    共 1 条回复 >

  • qq_杀意隆_0
    2017-10-21 16:05:15

    你干嘛一个例子写一个<script></script>呢?直接统一在后面写一个就够了。

     <script type="text/javascript">
            //点击buttom2 执行动画隐藏
            /*$("button:last").click(function() {
                $("#a2").hide({
                    duration: 3000,
                    complete: function() {
                        alert('执行3000ms动画完毕')
                    }
                })
            });
            */
            $("button:last").css("color","red");
            </script>

    你这个脚本插入时,前面只有2个button,所以第二个button相对这个脚本来说就是最后一个button。

    html文档是由上往下执行的。

jQuery基础(四)—动画篇

jQuery基础教程动画篇,讲解jQuery基础开启动画修炼

85058 学习 · 262 问题

查看课程

相似问题