夜光带你走进 前端工程师(三十三 jS )

夜光序言:

 

 

 

 

善待你遇到的每一个人,向他们微笑。

你不知道他们正在经历什么,也许他们今天正需要你的微笑,並会把它珍藏。

 

 

 

 

 

 

 

正文:

 

<script>
    window.onload = function(){
          var btns = document.getElementsByTagName("button");  //  getElementsByTagName  这里用到一个集合
          var inputs = document.getElementById("bottom").getElementsByTagName("input");  //这是高端操作
        // bottom里面的input
          btns[0].onclick = function(){    //btns[0]代表的是全选这个按钮
              for(var i=0;i<inputs.length;i++){
                  inputs[i].checked = true;   //选中表单
              }

          };
          btns[1].onclick = function(){
              for(var i=0;i<inputs.length;i++){
                  inputs[i].checked = false;
              }
          }
    }
</script>

 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<script>
    window.onload = function(){
          var btns = document.getElementsByTagName("button");  //  getElementsByTagName  这里用到一个集合
          var inputs = document.getElementById("bottom").getElementsByTagName("input");  //这是高端操作
        // bottom里面的input
          btns[0].onclick = function(){    //btns[0]代表的是全选这个按钮
              for(var i=0;i<inputs.length;i++){
                  inputs[i].checked = true;   //选中表单
              }

          };
          btns[1].onclick = function(){
              for(var i=0;i<inputs.length;i++){
                  inputs[i].checked = false;
              }
          };
          btns[2].onclick = function(){
              for(var i=0;i<inputs.length;i++){
                  if (inputs[i].checked == true)   //这边是双等号  注意细节
                  {
                      inputs[i].checked = false;
                  }
                  else
                  {
                      inputs[i].checked = true;
                  }
              }
          }
    }
</script>
<body>
<!--//上下两个盒子   因为样式问题-->
<div id="top">
    <button>全选</button>
    <button>清楚</button>
    <button>反选</button>
</div>
<div id="bottom">
    <ul>
        <li>选项:<input type="checkbox"></li>
        <li>选项:<input type="checkbox"></li>
        <li>选项:<input type="checkbox"></li>
        <li>选项:<input type="checkbox"></li>
        <li>选项:<input type="checkbox"></li>
        <li>选项:<input type="checkbox"></li>
        <li>选项:<input type="checkbox"></li>
        <li>选项:<input type="checkbox"></li>
        <li>选项:<input type="checkbox"></li>
    </ul>
</div>
</body>
</html>

 

//以上就是完整的代码   帅气

 

全选反选  结束

                              夜光

 

相似的可以封装

全选和 取消  函数  【这里用到封装】

一元运算符: a++  b++ +a  -a

二元运算符:a+b  a>=b

三元运算符: 表达式? 结果1:结果2    等价于 if else

如果表达式为真,返回结果1

如果表达式为假,返回结果2

 

If(3>5) {alert(“11”)} else{alert(22)}

3>5?alert(11);alert(22)

 

 

 

排他思想

                     夜光

 

1.4 排他思想

要提一提李世民【好好复习】

首先干掉所有人   剩下自己

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        .king{
            background-color: beige;
        }
    </style>
</head>
<script>
    window.onload = function(){
        var btns = document.getElementsByTagName("button");
        for(var i = 0;i<btns.length;i++)
        {
            btns[i].onclick = function(){
                this.className = "king";
            }
        }



    }
</script>
<body>
<button>游戏设计</button>

<button>动漫设计</button>

<button>商业设计</button>

<button>UI设计</button>

<button>其他</button>

</body>
</html>

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        .king{
            background-color: beige;
        }
    </style>
</head>
<script>
    window.onload = function(){
        var btns = document.getElementsByTagName("button");
        for(var i = 0;i<btns.length;i++)
        {
            btns[i].onclick = function(){
                /*this.className = "king";*/
                //点击之后 首先干掉别人
                for(var j = 0;j<btns.length;j++){
                    btns[j].className = "";
                }
                //剩下自己
                this.className = "king";
            }
        }



    }
</script>
<body>
<button>游戏设计</button>

<button>动漫设计</button>

<button>商业设计</button>

<button>UI设计</button>

<button>其他</button>

</body>
</html>

 

弹出当前的索引号             【十分关键   核心必备】

                               夜光

 

 

如何弹出当前索引号  这十分关键

 

 

可以做出这种效果:当前索引号

 

 

1.5  变量和属性   【穿插进来说明   便于理解当前索引号如何调用】

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script>
    var index = 10;   //变量   谁都可以使用
    var arr = [];      //数组
    arr.index = 20;    //自定义属性   只可以在arr中使用
    alert(arr.index);
</script>
</body>
</html>

 

<script>
    window.onload = function(){
        var btns = document.getElementsByTagName("button");
        for(var i = 0;i<btns.length;i++)
        {
            btns[i].index = i;   //调用当前索引号准备工作   属性   给每一个button定义了一个index属性
            btns[i].onclick = function(){
                /*this.className = "king";*/
                //点击之后 首先干掉别人
                alert(this.index);    //调用当前索引号准备工作   属性   给每一个button定义了一个index属性

                for(var j= 0;j<btns.length;j++){
                    btns[j].className = "";
                }
                //剩下自己
                this.className = "king";     //运用this语句  来实现
            }
        }



    }
</script>

 

//充分理解 这个操作   十分关键    夜光

 

变量:独立存在  自由自在的

 

属性和方法: 属于某一个对象的属性和方法

btns[i].index = i;   //调用当前索引号准备工作   属性   给每一个button定义了一个index属性

index只有btns[i]才有   帅气

 

tab栏切换效果                【十分关键】

                             夜光

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        .box{
            width: 400px;
            height: 40px;
            margin: 100px auto;
            border: 1px solid #cccccc;
        }
        .bottom div{
            width: 100%;
            height: 300px;
            background-color: aquamarine;
        }
    </style>
</head>
<body>
<div class="box">
    <div class="top">
        <button>海贼王</button>
        <button>火影忍者</button>
        <button>东京食尸鬼</button>
        <button>名侦探柯南</button>
    </div>
    <div class="bottom">
        <div>一号盒子</div>
        <div>二号盒子</div>
        <div>三号盒子</div>
        <div>四号盒子</div>
        <div>五号盒子</div>
    </div>

</div>
</body>
</html>

 

深入优化:

 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        .box{
            width: 400px;
            height: 40px;
            margin: 100px auto;
            border: 1px solid #cccccc;
        }
        .bottom div{
            width: 100%;
            height: 300px;
            background-color: aquamarine;
            display: none;
        }
    </style>
</head>
<body>
<div class="box">
    <div class="top">
        <button>海贼王</button>
        <button>火影忍者</button>
        <button>东京食尸鬼</button>
        <button>名侦探柯南</button>
    </div>
    <div class="bottom">
        <div style="display: block">一号盒子</div>
        <div>二号盒子</div>
        <div>三号盒子</div>
        <div>四号盒子</div>
        <div>五号盒子</div>
    </div>

</div>
</body>
</html>

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值