首页 > 编程语言 >JavaScript—BOM

JavaScript—BOM

时间:2023-09-01 19:45:11浏览次数:42  
标签:function console log JavaScript window BOM document location

概念

BOM(Browser Object Model)是指浏览器对象模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。BOM由多个对象组成,其中代表浏览器窗口的window对象是BOM的顶层对象,其他对象都是该对象的子对象。我们在浏览器中的一些操作都可以使用BdM的方式进行编程处理,比如:刷新浏览器、后退、前进、在浏览器中输入URL等。

Window对象

Window是浏览器的顶级对象,调用Window下的属性和方法时,可以省略Window

Window对象
// 场景1
        let obj = {
            name: 'example',
            fx: function () {
                console.log(this)
            }
        }
        let temp = obj.fx
        temp()      // window.temp()
// 场景2
        function f() {
            return function () {
                console.log(this);
            }
        }
        window.f()()
// 场景3-内置函数
        window.alert("000")
        prompt("01")

定时器

setInterval与setTimeout
         let time = setInterval(function () {
            let date = new Date()
            document.querySelector("#time").innerHTML = date.toLocaleString()
        }, 1000)
        document.querySelector("#btn").onclick = function () {
            window.clearInterval(time)
        }
        setTimeout(function () {
            let date = new Date()
            document.querySelector("#time").innerHTML.toLocaleString()
        }, 10000)

onload加载

方法用于在网页加载完毕后立刻执行的操作,即当 HTML 文档加载完毕后,立刻执行某个方法。

查看代码
// document.querySelector("#bg").style.backgroundColor = "#F00";
        window.onload = function () {
            document.querySelector("#bg").style.backgroundColor = "#F00";
        }

location

查看代码
 <input type="button" value="跳转" id="btn"/>
<script>
  //对象中的属性和方法
  //location对象
  console.log(window.location);
  //地址栏上#及后面的内容(包括#)
  console.log(window.location.hash);
  //主机名及端口号
  console.log(window.location.host);
  //主机名
  console.log(window.location.hostname);
  //文件的路径---相对路径
  console.log(window.location.pathname);
  //端口号
  console.log(window.location.port);
  //协议
  console.log(window.location.protocol);
  //搜索的内容 ?后面
  console.log(window.location.search);

  onl oad=function () {
    document.querySelector("#btn").onclick=function () {
      //设置跳转的页面的地址
      location.href="http://www.baidu.com";//属性----------------->必须记住
      //location.reload();//重新加载--刷新
      //location.replace("http://www.baidu.com");//没有历史记录
    };
  };

</script>

历史histry

前进
  <a href="history后退.html">跳转</a>
    <input type="button" value="前进" id="btn" />
    <script>
        document.querySelector("#btn").onclick = function () {
            window.history.forward();
        }
    </script>
后退
<input type="button" value="后退" id="btn"/>
<script>
    document.querySelector("#btn").onclick=function () {
        window.history.back();
    }
</script>

本地存储localStorage

查看代码
   <input type="button" value="获取本地存储数据" id="btn" />
  <script>
    window.onload = function () {
      window.localStorage.setItem("stu", JSON.stringify({ id: 1, name: "jack" }))
    }
    document.querySelector("#btn").onclick = function () {
      let stu = JSON.parse(localStorage.getItem("stu"))
      console.log(stu);
    }

 

标签:function,console,log,JavaScript,window,BOM,document,location
From: https://www.cnblogs.com/vayenge/p/17502120.html

相关文章

  • JavaScript—轮播图
    概念轮播图(Carousel)是一种常见的网页设计元素,用于展示多张图片或信息。它通常由一个容器和一组水平排列的图片或内容组成。轮播图中的图片会按照一定的规律(例如自动轮播、点击切换或滑动切换等)进行切换,以便在有限的空间内展示多个内容。HTML元素网页元素<divclass="wrap">......
  • JavaScript—数组
    数组的概念数组是指一组数据的集合,其中的每一个数据称作元素在数组中可以存放任意类型的元素。数组是一种将一组数据存储在单个变量名下的方式。创建数组创建数组vararr=newArray();//使用new创建一个空数组vararr0=[];//利用数组字面量创建数组vara......
  • JavaScript—作用域
    JavaScript作用域:就是代码名字(变量)在某个范围内起作用和效果。目的是/为了提高程序的可靠性同时减少命名冲突。JavaScript作用域在(es6)之前:全局作用域和局部作用域。全局作用域:整个Script标签或者一个单独的js文件。局部作用域:在函数内部就是局部作用域。这个代码名字只在函数......
  • JavaScript—内置对象
    内置对象是什么JavaScript中的对象分为三种:自定义对象,内置对象和浏览器对象。前面两种对象是JS基础内容,属于ECMAScript;第三个浏览器对象属于我们JS独有的。内置对象就是指JS语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是最基本而必要的功能(属性和方法)。内置......
  • JavaScript—对象
    为什么需要对象保存一个值时,可以使用变量,保存多个值(一组值)时,可以使用数组。如果要保存一个人的完整信息(信息面板)呢?在JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。对象是由属性和方法组成。属性:事物的特征,在对象中用......
  • JavaScript—预解析
    预解析口诀:先声明再调用JavaScript代码是由浏览器中的JavaScript解析器来执行的。JavaScript解析器在运行JavaScript代码的时候分为两步:预解析和代码执行。 预解析的变量问题 /*console.log(unknow);*///报错:使用了未定义的变量console.log(num);......
  • JavaScript—简单类型与复杂类型
    简单数据类型的内存分配简单类型又叫做基本数据类型或者值类型,复杂类型又叫做引用类型。(简单)值类型:简单数据类型/基本数据类型,在存储时变量中存储的是值本身,因此叫做值类型:string,number,boolean,undefined,null。简单数据类型存放在栈里面查看代码vartimer=null;......
  • JavaScript阶段易踩坑--层级覆盖--var与let使用--事件流(捕获和冒泡)
    刚刚走完JavaScript阶段,感觉挺爽的。但在总结的时候,我发现一些在做网页中容易错的地方,还有一些比较重要的方面。为了避免其他人在这一阶段也遇到这些问题。我今天就着重说一下在JavaScript这一阶段我容易出现的问题,从而让大家在遇到相同问题的时候可以快速解决。一.盒子覆盖问题只......
  • JavaScript中exec()方法详解
    一、RegExp对象的声明及exec()方法的使用声明一个RegExp有两种方式:1)varre=newRegExp(pattern,modifiers);2)varre=/pattern/modifiers;注释:pattern(模式):描述了表达式的模式modifiers(修饰符)用于指定全局匹配、区分大小写的匹配和多行匹配,具体有i、g和m三类,这三类也......
  • LatexEasy | JavaScript集成公式编辑器
    在线示例https://latexeasy.com/en/demo/sdk使用方式基础使用方式<iframeid="liveEditor"frameborder="0"style="width:100%;height:400px;border:0;outline:none;"src="https://latexeasy.com/editor"></if......