zoukankan      html  css  js  c++  java
  • BOM,DOM

    1.BOM

      1.window对象

        1.location

          1.location.href

          2.location.href='地址'   --->跳转

          3.location.reload()       --->重新加载

      2.计时器:

        1.一段时间后做什么事.

          1.setTimeout('JS语句',毫秒)

          2.clearTimeoutl()

        2.每隔一段时间做什么

          1.setInterval('JS语句',毫秒)

          2.clearInterval()

    2.DOM

      1.查找标签

        1.直接查找

          1.document.getElementById()   -- 根据ID标签查找

          2.document.getElementByClassName() -- 根据class属性查找

          3.document.getElementByTagName()  -- 根据标签名获取标签集合

        .间接查找

          1.parentElement --- 父标签标签元素

          2.children  --- 所有的子标签

      2.文档的操作

        1.创建标签

          1.var s1Ele = document.createElement('option')

      3.文档内容

        1.innerText

        2.innerHTML --> 可以认识HTML标签

      4.获取用户输入标签的值 (input/select/textarea)

        1.value

      5.样式的操作

        1.classList

          1.add

          2.remove

          3.contains

          4.toggle

        2.直接操作style

          1.obj.style.backgroundColor = 'red'

      6.时间

        1.绑定方式

          1.直接在HTML中写属性

          2.使用JS绑定事件

        常用事件

        

    onclick        当用户点击某个对象时调用的事件句柄。
    ondblclick     当用户双击某个对象时调用的事件句柄。
    
    onfocus        元素获得焦点。               // 练习:输入框
    onblur         元素失去焦点。               应用场景:用于表单验证,用户离开某个输入框时,代表已经输入完了,我们可以对它进行验证.
    onchange       域的内容被改变。             应用场景:通常用于表单元素,当元素内容被改变时触发.(select联动)
    
    onkeydown      某个键盘按键被按下。          应用场景: 当用户在最后一个输入框按下回车按键时,表单提交.
    onkeypress     某个键盘按键被按下并松开。
    onkeyup        某个键盘按键被松开。
    onload         一张页面或一幅图像完成加载。
    onmousedown    鼠标按钮被按下。
    onmousemove    鼠标被移动。
    onmouseout     鼠标从某元素移开。
    onmouseover    鼠标移到某元素之上。
    
    onselect      在文本框中的文本被选中时发生。
    onsubmit      确认按钮被点击,使用的对象是form。
    

      

    计时器例子

      

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
        <meta charset="UTF-8">
        <title>计时器示例</title>
        <!--<script>-->
            <!--// var i1Ele = document.getElementById('i1')-->
            <!--// alert(i1Ele)-->
            <!--//当文档加载完之后才执行-->
            <!--var i1Ele = document.getElementById('d1');-->
            <!--alert(d1Ele.innerText)-->
    
        <!--</script>-->
    </head>
    <body>
    <input type="text" id="i1">
    <input type="button" id="start" value="开始">
    <input type="button" id="stop" value="结束">
    <div id="d1">傻逼</div>
        <script>
            // var i1Ele = document.getElementById('d1');
            // alert(d1Ele.innerText)
            //把当前事件塞到I1标签中
            function setTime(){
                //1找到标签
            var i1Ele = document.getElementById('i1')
            //2拿到当前时间
            var now = new Date()
            //3设置i1标签的value属性为now时间
            i1Ele.setAttribute('value',now.toLocaleString())
            }
            setTime();
            //定义一个存放计时器ID的全局变量
            var t;
    
            //点击开始按钮,让i1标签中的时间动起来
            //1.找到开始按钮,绑定点击事件
            var startBtn = document.getElementById('start');
            startBtn.onclick = function() {
                //要做的事
                if(t === undefined){
                //一秒钟执行一次设置value动作
                t = setInterval(setTime,1000);}
            }
            //点击结束按钮,终止设置时间的定时任务
            //找到结束按钮,绑定点击事件
            var stopBtn = document.getElementById('stop');
            stopBtn.onclick = function(){
                //清除上面的定时器
                clearInterval(t);
                t = undefined
            }
        </script>
    
    </body>
    </html>
    

      事件例子

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
        <meta charset="UTF-8">
        <title>两个select联动</title>
    </head>
    <body>
    <select id="s1">
        <option value="">请选择省</option>
    </select>
    <select id="s2">
    
    </select>
    <script>
        var data = {
            '广东省': ['广东市', '深圳市', '惠州'], '北京': ['朝阳区', '海定区']
            , '山东': ['威海', '大连']
        }
        var s1Ele = document.getElementById('s1');
        //页面一刷新,把所有的省加载到第一个select标签内
        for (var i in data) {
            console.log(i);
            //创建一个option
            var op = document.createElement('option');
            // 设置文本
            op.innerText = i;
            // 把创建好的标签塞到第一个select标签内部
            s1Ele.appendChild(op);
            //给第一个select标签绑定一个值发生变化的事件
            var s2Ele = document.getElementById('s2');
            s1Ele.onchange = function () {
                //获取当前select选中的值
                var value = s1Ele.value;
                //1去data里找对应的地区信息
                var data2 = data[value];
                //2清空第二个select标签的内容
                s2Ele.innerText = '';
                //3把对应的地区信息追加到第二个select标签内
                for (var j = 0; j < data2.length; j++) {
                    var op = document.createElement('option');
                    //设置文本
                    op.innerText = data2[j]
                    //把创建好的标签塞到第二个select标签中
                    s2Ele.appendChild(op);
                }
            }
        }
    </script>
    </body>
    </html>
    

      

  • 相关阅读:
    分析报告生产器使用问题
    如何使用分析报告生产器来生产图表
    基础数据代换代码
    浅谈Session与Cookie的区别与联系
    TCP和UDP的区别(转)
    项目管理技巧-怎么让代码规范执行下去
    吾日三省吾身
    C# 类型基础
    泛型
    事件与委托(续)
  • 原文地址:https://www.cnblogs.com/lijinming110/p/9811035.html
Copyright © 2011-2022 走看看