javascript - 为什么只有前两次点击有效。?

查看:75
本文介绍了javascript - 为什么只有前两次点击有效。?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>挑战题</title>
    </head>
    <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript">    
    </script>
    <body>
        <ul>
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
            <li style="display:none" >5</li>
            <li style="display:none">6</li>
            <li>7</li>
        </ul>
        <a href='#' >更多</a>
        <script type='text/javascript'>
        $("a").click(function(){
            if($("a").text()==='更多'){
              $("li[style='display:none']").show();
             $("a").text("简化");
        }else if($("a").text()==='简化'){
         $("li:eq(4)").hide();
         $("li:eq(5)").hide();
           $("a").text("更多");
        }
    }
   ); 
        </script>
    </body>
</html>

解决方案

改成下面这样就可以啦,因为你调用 show 这个方法会使 li 的行内样式设置成 style="display: none;" ,所以这个时候通过 $('li[display:none]') 选择器使选择不到的

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>挑战题</title>
    </head>
    <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript">    
    </script>
    <body>
        <ul>
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
            <li style="display: none;" >5</li>
            <li style="display: none;">6</li>
            <li>7</li>
        </ul>
        <a href='#' >更多</a>
        <script type='text/javascript'>
        $("a").click(function(){
            if($("a").text()==='更多'){
              $("li[style='display: none;']").show();
             $("a").text("简化");
        }else if($("a").text()==='简化'){
         $("li:eq(4)").hide();
         $("li:eq(5)").hide();
           $("a").text("更多");
        }
    }
   ); 
        </script>
    </body>
</html>

这篇关于javascript - 为什么只有前两次点击有效。?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆