为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我这样写不起作用?很奇怪

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>挑战题</title>
        <style>
            .hide{
                display: none;
            }
            li{ list-type: none; list-style-type: none;}
        </style>
        <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript"></script>
    </head>
    
    <body>
        <ul>
            <li>1A</li>
            <li>1B</li>
            <li>1C</li>
            <li>1D</li>
            <li>1E</li>
            <li class="hide">1F</li>
            <li class="hide">1G</li>
            <li><a href="#">更多</a></li>
        </ul>
        <script>
            $("a").click(function(){
                if($("a").html("更多")){
                    $("a").html("简化");
                    $(".hide").show();
                }
                else{
                    $("a").html("更多");
                    $(".hide").hide();
                }
            });
        </script>
    </body>
</html>


那么为什么这样写却没问题呢?求大神详细解答,非常感谢!!!


  这是其他同学代码!思路是一样的,但为什么我的不行呢?因为this吗?


         $('a').click(function(){
                if($(this).html()==='更多'){
                  $('.hide').show(500);
                  $(this).html("简化");
                }else{
                  $('.hide').hide(500);
                  $(this).html("更多");
                }
            });

正在回答

1 回答

$("a").click(function(){
    if($("a").html() == '更多'){
        $("a").html("简化");
        $(".hide").show();
    }
    else{
        $("a").html("更多");
        $(".hide").hide();
    }
});

不是因为this  是因为 if($("a").html("更多"))  你这么写 永远为真,不可能进到else里面去

1 回复 有任何疑惑可以回复我~
#1

Mountain_Ghost 提问者

非常感谢!恍然大悟,的确!
2015-11-18 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
jQuery基础课程
  • 参与学习       154768    人
  • 解答问题       7184    个

加入课程学习,有效提高前端开发速度

进入课程

为什么我这样写不起作用?很奇怪

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信