首页 > 其他分享 >JS BOM 基础

JS BOM 基础

时间:2022-11-25 19:56:38浏览次数:38  
标签:function 基础 JS window location addEventListener var btn BOM

目录

页面加载事件

  1. load

    页面所有元素加载完毕才执行

    window.addEventListener('load', function () {
    	var btn = document.querySelector('button');
        btn.onclick = function () {
    		alert('1');
    	}
    })
    
  2. DOMContentLoaded

    DOM元素加载完毕执行,不包含图片 falsh css 等 加载速度比 load 快

    window.addEventListener('DOMContentLoaded', function () {
    	alert('3');
    })
    

调整窗口大小

  1. resize

    页面的大小发生变化就会触发

    window.addEventListener('resize', function () {
    	// window.innerWidth 浏览器页面的宽 window.innerHeight 浏览器页面的高
    	console.log('宽:' + window.innerWidth, '高:' + window.innerHeight);
    	if (window.innerWidth <= 800) {
    		div.style.display = 'none';
    	} else {
    		div.style.display = 'block'
    	}
    })
    

定时器

  1. setTimeou

    语法规范:window.setTimeout(调用函数,延时时间);

    此处 window 可省略 延时时间可省略 省略默认为 0 默认单位毫秒

    setTimeout(function(e){
        console.log(e);
        alert('倒计时已完成');
    },2000)
    

    这个调用函数可以写函数也可以写函数名

    setTimeout(djs, 2000);
            function djs() {
                alert('倒计时已完成');
            }
    

    回调函数:上一件事情干完再回过头调用函数

    例:setTimeout(调用函数,延迟时间) 等延迟时间完了再调用‘调用函数’

    setTimeout(djs,2000) 2000 毫秒过后 调用 djs

  2. 清除setTimeou

    <script>
        var btn = document.querySelector('button');
        var timer = setTimeout(function() {
            alert('三秒倒计时已结束');
        },3000)
        btn.addEventListener('click', function(){
            // clearTimeout 清除定时器
            clearTimeout(timer);
            alert('倒计时已暂停')
        })
    </script>
    
  3. setInterval

    每隔这个延时时间就调用一次调用函数

    var time = 1;
            setInterval(function() {console.log(time++);},1000)
    
  4. 清除setInterval

    stop.addEventListener('click', function () {
        console.log('暂停计时');
        clearInterval(timer);
    })
    

location

  1. href

    location 位置 href 超链接 location.href 跳转至超链接的位置

    location.href = 'http://127.0.0.1:5500/js/BOM/08two.html';
    
  2. search

    获取 URL 参数 location.search 返回参数

    // 第一个网页
    <form action="09two.html">
            用户名:<input type="text" name="usname"> <input type="submit" value="登录">
    </form>
    // 第二个网页
    <script>
        var div = document.querySelector('div');
        // 获取 URL 参数    location.search 返回参数
        console.log(location.search);   // ?usname=a
        // 去除 ?  substr(起始位置,截取字符个数)
        var params = location.search.substr(1);
        console.log(params);    // usname=a
        // 分隔成数组 split('=')
        var arr = params.split('=');
        console.log(arr);   // ['usname', 'a']
        div.innerHTML = arr[1] + ' 欢迎登录';    
    </script>
    
  3. 常见方法

    <script>
        var btn = document.querySelector('button');
        btn.addEventListener('click', function(){
            // 记录浏览历史,可以实现后退功能
            // location.assign('http://www.baidu.com');
    
            // 替换页面不能后退
            // location.replace('http://www.baidu.com');
    
            // 重新加载页面,相当于刷新(f5)参数为 true 强制刷新(ctrl+f5)
            location.reload(true);
        })
    </script>
    

history

  1. 前进 forward() go(1) 后退 back() go(-1) 刷新 go(0)

    // 第一个网页
    <body>
        <a href="http://127.0.0.1:5500/js/BOM/11two.html">点击我去下一页</a>
        <button class="forward">前进</button>
        <button class="f5">刷新</button>
        <script>
            var btn = document.querySelector('.forward');
            btn.addEventListener('click', function(){
                history.forward();
            })
            var btn2 = document.querySelector('.f5');
            btn2.addEventListener('click',function(){
                // -1 后退 0 刷新 1 前进
                history.go(0);
            })
        </script>
    </body>
    // 第二个网页
    <body>
        <a href="http://127.0.0.1:5500/js/BOM/11history%E5%AF%B9%E8%B1%A1%E6%96%B9%E6%B3%95.html">点击我去上一页</a>
        <button>后退</button>
        <script>
            var btn = document.querySelector('button');
            btn.addEventListener('click', function () {
                history.back();
            })
        </script>
    </body>
    

标签:function,基础,JS,window,location,addEventListener,var,btn,BOM
From: https://www.cnblogs.com/xiaoyaee/p/16926189.html

相关文章

  • JS DOM 基础
    目录创建增删改查属性操作事件操作鼠标事件主要有创建、增、删、改、查、属性操作、事件操作创建document.write()页面文档流加载完毕,再调用这行会导致页面重绘(......
  • java基础语法学习笔记
    java基础语法学习笔记数组定义的三种方法int[]array1={1,2,3,4,5};//定义一int[]array2=newint[10];//定义二int[]array3=newint[]{1,2,3,4,5};/......
  • jQuery 基础
    目录基本使用选择器操作样式动画效果属性操作元素操作jQuery文档地址基本使用入口函数 //入口函数 //文档准备好执行函数 $(document).ready(function(){......
  • Ajax 基础
    目录GET请求POST请求form表单渲染UI结构传统方法模板引擎exec函数自定义模板引擎JSONform对象文件其他URL编码与解码封装自己的Ajax函数设置超时时限axios的使......
  • [JS DOM&BOM]Web API
    [JSDOM&BOM]WebAPIWebAPIWebAPI是浏览器提供的一套操作浏览器功能和页面元素的API(DOM和BOM)认识DOM什么是DOM文档对象模型(DOM)是HTML和XML文档的编程接口。它提供了对......
  • day41MySQl基础(04)
    SQL语句查询关键字selectfromwheregroupbyhavingdistinctorderbylimitregexp多表查询的两种方式子查询连表操作报错及作业讲解报错 1.粗心大意单词拼......
  • JS请求参数加密破解
    源代码如下functionajax(){var_0x41e66d=_0xe062,_0x31cef8={'type':arguments[0x0][_0x41e66d(0x91)]||_0x41e66d(0x92),'url':arguments......
  • JavaScript 基础
    JavaScript使用JS的几种写法行内式的js直接写道元素的内部​​<buttontype="button"value="须弥"onclick="alert('纳西妲')"></button>​​内嵌式js引入式​​<scripts......
  • Java 注解与反射 基础
    注解与反射基础什么是注解Annotation注解Annotation的作用:不是程序本身,可以对程序做出解释。可以被其他程序(比如编译器等)读取annotation的格式:注解是以”@注释名“再代......
  • C语言基础
    (1)栈(stack):由编译器进行管理,自动分配和释放,存放函数调用过程中的各种参数、局部变量、返回值以及函数返回地址。操作方式类似数据结构中的栈。(2)堆(heap):用于程序动态申请分配......