• JavaScript学习4


    1、if语句的使用:如果...否则

    if(判断条件){
    
      //当判断条件满足时,执行该处代码
    
    }else{
    
      //当判断条件不满足时,执行该处代码
    
    }
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <div id='box' style=" 200px;height: 200px;background: red;"></div>
    <button id="btn">验证</button>
    <script>
        var box = document.getElementById('box');
        var btn = document.getElementById('btn');
        //if(判断条件){条件成立执行}
        btn.onclick = function () {
            //当宽度=200px时
            if (box.style.width == '200px') {
                alert("条件成立!!")
            }else{
                //不满足条件执行
                alert("条件不成立!!")
            }
        }
    
    </script>
    </body>
    </html>

    2、多条件判断if...else if...:r如果...或者如果...否则

    if(判断条件){
    
      //当判断条件满足时,执行该处代码
    
    }else if(判断条件){
    
      //当判断条件满足时,执行该处代码
    
    }else if(判断条件){
    
      //当判断条件满足时,执行该处代码
    
    }else{
    
      //当判断条件不满足时,执行该处代码
    
    }

    实现一个评分系统

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <input id='score' type="text">
    <button id="btn">评级</button>
    <script>
        var score = document.getElementById('score');
        var btn = document.getElementById('btn');
        btn.onclick = function () {
            var scoreTxt = score.value;
            if(scoreTxt >= 80){
                alert('优秀!');
            }else if(scoreTxt >= 70){
                alert('良好!');
            }else if(scoreTxt >= 60){
                alert('一般!');
            }else{
                alert('不及格~!!')
            }
        }
    </script>
    </body>
    </html>

    注意事项:

      1)判断条件可以有多个。

      2)可以只有if没有else。

      3、判断条件之布尔值

      true 真

      false 假

    4、比较运算符

      5 > 10  大于 -->false

      5 < 10 小于 -->true

      5 == 10 等于 -->false

    5、逻辑运算符

      与&&

      或||

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <input id='score' type="text">
    <button id="btn">评级</button>
    <script>
        var score = document.getElementById('score');
        var btn = document.getElementById('btn');
        btn.onclick = function () {
            var scoreTxt = score.value;
            // && 与
    //        if(scoreTxt <= 100 && scoreTxt >= 0){
    //           alert('正常值!!');
    //        }else {
    //            alert('非正常值!!');
    //        }
            // || 或
            if(scoreTxt > 100 || scoreTxt < 0) {
                alert('非正常值!!');
            }else {
                alert('正常值!!');
            }
    
            //
        }
    </script>
    </body>
    </html>

       非!

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    
    </head>
    <body>
    <div id='box' style=" 200px;height: 200px;background: red;"></div>
    <button id="btn">验证</button>
    <script>
        var box = document.getElementById('box');
        var btn = document.getElementById('btn');
        //定义开关:下拉菜单的打开与关闭的切换
        var onOff = true;
        //if(判断条件){条件成立执行}
        btn.onclick = function () {
            if (onOff) {
                alert("条件成立!!")
    //            onOff = false;
            }else{
                //不满足条件执行
                alert("条件不成立!!")
    //            onOff = true;
            }
            // 每次都需要修改取反,可控制开关
            onOff = !onOff;
        }
    </script>
    </body>
    </html>

     6、定义数组

    1)[ ] 可以存储多个值

    2)每个值之间利用都好进行间隔,最后一个值后面没有逗号

    var arr = ['a','b','c'];

    3)数组的长度length

        var arr = ['a','b','c'];
        /*
        * 通过length属性可以查看当前数组中有多少个值
        * */
       arr.length

    7、for循环和this指向

    1)对一个div操作实例:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            div{
                 100px;
                height: 100px;
                background: red;
                margin: 20px;
            }
        </style>
    </head>
    <body>
    <div></div>
    <div></div>
    <script>
        //假如对一个div进行操作
    //    var div = document.querySelector('div');
    //    div.onclick = function () {
    //        div.style.background = 'yellow';
    //    }
    
        /*假如对2个div进行操作
        * 现在可以获取到一个元素all所有、全部
        * 获取了一组div
        * 不能直接给一组元素加事件
        * 类数组
        * */
        var divs = document.querySelectorAll('div');
        //获取元素的长度
    //    console.log(divs.length);-->2
    //    divs.onclick = function () {
    //        divs.style.background ='green';
    //    }
        divs[0].onclick = function () {
            divs[0].style.background = 'green';
        };
    
        divs[1].onclick = function () {
            divs[1].style.background = 'blue';
        };
        
        //假如对100个div进行操作,引出for循环
    </script>
    </body>
    </html>

    2)假如对100个div进行操作,引出for循环

        for(初始值,循环条件,自增条件){
            执行语句
        }

    for循环的使用需求:
    1、当操作一组元素的时候会用到for
    2、重复做一件事情的时候

    8、this指向

    示例

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            div{
                 100px;
                height: 100px;
                background: red;
                margin: 20px;
            }
        </style>
    </head>
    <body>
    <div></div>
    <div></div>
    <script>
        var divs = document.querySelectorAll('div');
        //加入对100个div进行操作,引出for循环
        //for循环重复不断的做一件事情
    //    for(初始值,循环条件,自增条件){
    //        执行语句
    //    }
    
        // for循环在页面加载时执行!!
        for(var i=0;i<divs.length;i++){
            //执行3次
    //        alert(i);
    //        console.log(i);-->0 1 表示执行了2次
            divs[i].onclick = function () {
    //            console.log('点击事件内的i'+ i); -->此时的i的值是2
    // 当 divs[2].style时,因为没有定义divs[2]导致报错》》Uncaught TypeError: Cannot read properties of undefined (reading 'style')
                divs[i].style.background = 'green';
            };
        }
        //i=2时for循环结束
    </script>
    </body>
    </html>

    this指向

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            div{
                 100px;
                height: 100px;
                background: red;
                margin: 20px;
            }
        </style>
    </head>
    <body>
    <div></div>
    <div></div>
    <script>
        var divs = document.querySelectorAll('div');
        for(var i=0;i<divs.length;i++){
            divs[i].onclick = function () {
                //this就是当前调用事件的元素
                this.style.background = 'green';
            };
        }
    </script>
    </body>
    </html>

    9、元素的自定义属性

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            div{
                 100px;
                height: 100px;
                background: red;
                margin: 20px;
            }
        </style>
    </head>
    <body>
    <div class="box" id="abc" title="啦啦啦"></div>
    <script>
        var div = document.querySelectorAll('div')[0];
        //自定义属性
        div.title = '哈哈哈';
        //自定义属性在f12看不到,但是可以获取到
        console.log(div.title)
    </script>
    </body>
    </html>

     10、复选框

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <div class="box">
        <h3>模拟复选</h3>
        <div class="option">
            <a href="javascript:;">美食</a>
            <a href="javascript:;">逛街</a>
            <a href="javascript:;">旅游</a>
        </div>
    </div>
    <script>
        /*
        * 1、for
        * 2、if
        * 3、开关
        * 4、自定义属性
        * */
    
        //获取一组a标签
        var btns = document.querySelectorAll('.option a');
    
        // for 给一组元素加事件
        for(var i=0;i<btns.length;i++){
            btns[i].onclick = function () {
                //操作对应的按钮class
                this.className = 'checked';
            }
        }
    </script>
    </body>
    </html>

    11、单选框

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            .choice{
                 200px;
                height: 200px;
                margin: 0 auto;
            }
            .choice a{
                 display: block;
                  87px;
                 height: 20px;
                /* border: 1px solid black; */
                text-decoration: none;
                text-align: center;
            }
            .checked{
                border: 1px solid red;
            }
        </style>
    </head>
    <body>
        <div class="choice">
            <a href="javascript:;">男</a>
            <a href="javascript:;">女</a>
            <a href="javascript:;">保密</a>
        </div>
        <script>
            /*
            1.获取元素绑定元素
            2、for添加点击事件
            3、点击摸一个按钮之后先将所有按钮class都变空
            4、找到对应点击的按钮给他单独加上class=checked
            */
            //获取元素绑定元素
            var btns = document.querySelectorAll('.choice a');
            // 需要操作一组元素的时候就要用到for
            for(var i=0; i<btns.length;i++){
                btns[i].onclick = function(){
                    //点击摸一个按钮之后先将所有按钮class都变空
                    for(var j =0 ; j<btns.length;j++){
                        btns[j].className = '';
                    }
                    //找到对应点击的按钮给他单独加上class=checked
                    this.className = 'checked';
                }
            }
        </script>
    </body>
    </html>

    12、this函数下是this

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            .choice{
                 200px;
                height: 200px;
                margin: 0 auto;
            }
            .choice a{
                 display: block;
                  87px;
                 height: 20px;
                /* border: 1px solid black; */
                text-decoration: none;
                text-align: center;
            }
            .checked{
                border: 1px solid red;
            }
        </style>
    </head>
    <body>
        <div class="choice">
            <a href="javascript:;">男</a>
            <a href="javascript:;">女</a>
            <a href="javascript:;">保密</a>
        </div>
        <script>
            /*
            1.获取元素绑定元素
            2、for添加点击事件
            3、点击摸一个按钮之后先将所有按钮class都变空
            4、找到对应点击的按钮给他单独加上class=checked
            */
            //获取元素绑定元素
            var btns = document.querySelectorAll('.choice a');
            // 需要操作一组元素的时候就要用到for
            for(var i=0; i<btns.length;i++){
                btns[i].onclick = function(){
                    //点击摸一个按钮之后先将所有按钮class都变空
                    for(var j =0 ; j<btns.length;j++){
                        btns[j].className = '';
                    }
                    //找到对应点击的按钮给他单独加上class=checked
                    this.className = 'checked';
                }
            }
        </script>
    </body>
    </html>

    13、classList

    1)add()

    2)remove()

    3)contains()

    4) toggle()

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>class列表</title>
        <style>
            div{
                200px;
                height:200px;
                background: red;
            }
            .show{border:20px solid yellow;}
            .now{height:300px;}
        </style>
    </head>
    <body>
    <div class="show active"></div>
    <script>
        //classList class列表
        //操作元素的class属性的
        //obj.className操作class的
        var div =document.querySelector('div');
        div.onclick = function () {
    //        //需要将原有的class自己手动加上
    //        div.className = 'show active now';
    
            //体现classList的作用
            // add():在class原有的基础上添加一个属性
    //        div.classList.add('now');
    
            //remove(),删除class的某个属性
    //        div.classList.remove('show');
    
            //contains(),判断是否含有某个class contains
    //        console.log(this.classList.contains('active'));  // true
    //        console.log(this.classList.contains('abc'));  // false
    
            //toggle(),切换class,(添加/删除)例如:点击一下有,再点击一下无
            div.classList.toggle('now');
        }
    </script>
    </body>
    </html>

    14、九九乘法表

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            body{
                margin: 0px;
                font-size: 0px;
            }
            div{
                 120px;
                height: 40px;
                line-height: 40px;
                text-align: center;
                color: #fff;
                margin-right: 2px;
                margin-bottom: 2px;
                border-radius: 5px;
                background: lightcoral;
                display: inline-block;
                font-size: 16px;
            }
            .warp{
                background: url(img/bg.jpg) no-repeat center;
                height: 1067px;
                overflow: hidden;
            }
            #box{
                 1157px;
                height: 436px;
                background: linear-gradient(45deg,#dad4fa,#edebfd);
                border-radius:20px;
                padding:30px 0 0 30px;
                box-sizing:border-box;
                margin: 454px auto 0;
                position: relative;
            }
        </style>
    </head>
    <body>
    <section class="warp">
        <section id="box">
    
        </section>
    </section>
    <script>
        var box = document.getElementById('box');
        var colors = ['#78cc64','#58cd7e','#4fcdad','#4cc7dd','#469ee8','#465de8','#5846e8','#8346e8','#9e46e8'];
        var str = '';
        for(var i = 1;i<10;i++){
            for(var j = 1;j<=i;j++){
    //            box.innerHTML += '<div>' + j + ' * ' + i + ' = ' + j * i + '</div>';
                str += '<div style="background: '+ colors[i -1] + '">' + j + ' * ' + i + ' = ' + j * i + '</div>';
            }
            str += '</br>'
        }
        box.innerHTML = str;
    </script>
    </body>
    </html>

  • 相关阅读:
    JAVA垃圾收集器
    ora-12154
    获取IE浏览器关闭事件
    ajax 页面请求后,jsp页面定位
    poi 导出excel 异常处理方式--曲线救国法
    如何设计出高可用的分布式架构
    Java知识点整理(二)
    spring cloud & dubbo
    Spring Autowired原理
    如何更好的使用JAVA线程池
  • 原文地址:https://www.cnblogs.com/liunaixu/p/16398937.html
Copyright © 2020-2023  润新知