BOM&DOM

作者: wy22 | 来源:发表于2022-01-03 09:38 被阅读0次

    1. BOM

    BOM 是浏览器对象模型,就可以理解成是当前浏览器打开的窗口

    window对象 就是 BOM

    通过window对象 可以操作浏览器本身 它里面提供了一些操作当前浏览器的对象和方法

    1.1. 各种弹框:

    window.alert('消息框')

    window.prompt('输入框')

    window.confirm('确认框')

    1.2. 打开和关闭窗口:

    open()方法,打开新的窗口

    window.open('http://baidu.com')

    close()方法,关闭当前窗口

    window.close()

    1.3. 通用方法

    window.parseInt('123') //将字符串的'123',强转为整型的123

    window.parseFloat('12.12') //将字符串的'12.12',强转为浮点型的12.12

    window.isNaN('abc') //判断'abc',不是数值数据,成立返回true

    1.4. 定时器方法:

    指定毫秒后,执行的定时器

    window.setTimeout()

    每隔指定的毫秒后,执行的定时器

    window.setInterval()

    1.5. 常用属性

    location属性:

    location是window对象的属性,该属性用于设置网页的地址栏

    location.href属性 表示跳转,当前浏览器的地址栏发生了跳转

    其实超链接标签的内部就是对location.href属性的封装

    window.location.href = 'http://baidu.com'

    location.reload()方法 表示刷新当前地址栏(刷新当前窗口)

    window.location.reload()

    history属性:

    history是window对象的属性,该属性用于设置网页的浏览历史记录

    forward()前进

    window.history.forward()

    back()后退

    window.history.back()

    go()方法,既可以实现前进,也可以实现后退

    window.history.go(1) //前进一次

    window.history.go(3) //前进三次

    window.history.go(-1) //后退一次

    window.history.go(-3) //后退三次

    2. DOM

    DOM 文档对象模型,就是当前网页里面的所有内容。

    因为网页是在浏览器中显示的,整个浏览器是BOM,所以DOM其实是BOM的一部分

    BOM 就是 window对象 DOM 就是 document对象

    使用DOM获取网页元素:

    如果该元素,是网页的必备元素,而且只能有一个,可以通过document对象直接获取。

    比如:head,title,body

    document.body.style.border = "1px solid #ccc"

    document.title = 'helloworld'

    更多的时候,我要需要获取网页中的指定元素,这就需要专门的方法来获取了。

    getElementById()方法,根据元素的id属性值来获取指定的元素。

    注意:如果网页中id属性值重复,只获取第一个。

    getElementsByTagName()方法,根据元素的标签名获取所有该元素。

    getElementsByClassName()方法,根据元素的类选择器名称获取所有该元素。

    getElementsByName()方法,根据元素的name属性值获取所有该元素。

    简单的封装一下:

    function$(id){returndocument.getElementById(id)}

    querySelector()方法,根据选择器的名称返回元素,如果有多个元素,只返回第一个元素。

    querySelectorAll()方法,根据选择器的名称返回所有的元素。

    注意:querySelectorAll()方法,返回的是集合对象,不是数组对象。可以利用展开运算符,将集合对象转为数组对象。

    转为数组对象后,就可以使用数组相关的方法了。

    let divs2 = [...divs]

    querySelector()和querySelectorAll()方法里面也可以写所有的css选择器。

    3. 操作DOM元素的内容和样式

    操作DOM的样式,有多种方式:

    通过style属性直接设置

    通过className属性设置类选择器

    也可以通过classList属性添加多个类选择器

    操作DOM的内容:

    innerText属性,用于获取 和 操作 DOM的文本内容。

    innerHTML属性,用于获取 和 操作 DOM的HTML内容。

    4. 操作DOM元素的属性

    获取和设置标签自带的属性(原生属性),直接点

    let src = img.src //src是图片标签的原生属性

    获取和设置标签自定义的属性,需要通过getAttribute()和setAttribute()方法

    setAttribute()方法,设置元素的属性值,需要传两个参数(属性名和属性值)

    getAttribute()方法,获取元素的属性值,只需要传一个参数(属性名)

    5. 创建和删除DOM元素

    createElement()方法,用于创建DOM元素

    appendChild()方法,用于在当前DOM元素中添加子元素

    删除元素有两种写法:

    自删 remove()方法,是元素删除自己

    通过父级删除子级 removeChild()方法,是删除元素里面指定的子元素

    补充1:onclick是点击事件,on表示当,click表示点击

    补充2:parentElement和parentNode属性,返回父级元素

    相关文章

      网友评论

          本文标题:BOM&DOM

          本文链接:https://www.haomeiwen.com/subject/ulrxqrtx.html