DOM知识点

【DOM(文档对象模型)是 HTML 和 XML 的应用程序接口(API)。DOM代表着被加载到浏览器窗口里的当前网页:浏览器向我们提供了当前网页的地图(或者说模型),而我们可以通过js去读取这张地图。
作者:一只斗牛犬
链接:http://www.imooc.com/article/36780
来源:慕课网】

1、改变页面的元素和属性

a、获取元素的方法:

document.getElementById()

document.getElementsByTagName()

document.getElementsByClassName()

b、js输出HTML内容

document.write();

c、获取和修改元素的内容:

document.getElementById(id).innerHTML

document.getElementById(id).innerHTML=new HTML;

d、获取和修改元素的属性值:

document.getElementById(id).attribute

document.getElementById(id).attribute=new value;

e、添加html标签:

document.

f、添加html文本内容:

document.createTextNode

g、追加元素:

document.();

h、从父元素中删除子元素:

parent.removeChild(child)

2、改变页面元素的样式

a、修改css样式:

document.getElementById(id).style.property

document.getElementById(id).style.property=new style;

3、对页面元素事件的监听和处理

常用的事件:

onblur:当窗口失去焦点时运行脚本

onfocus:当窗口获得焦点时运行脚本

onchange:当元素改变时运行脚本

onsubmit:当提交表单时运行脚本

onkeydown:当按下按键时运行脚本

onkeypress:当按下并松开按键时运行脚本

onkeyup:当松开按键时运行脚本

onclick:当单击鼠标时运行脚本

ondblclick:当双击鼠标时运行脚本

onmousedown:当按下鼠标按钮时运行脚本

onmousemove:当鼠标指针移动时运行脚本

onmouseout:当鼠标指针移出元素时运行脚本

onmouseover:当鼠标指针移至元素之上时运行脚本

onmouseup:当松开鼠标按钮时运行脚本

onabort:当发生中止事件时运行脚本

DOM基本操作思维导图:

BOM知识点

【BOM 主要处理浏览器窗口和框架,不过通常浏览器特定的 JavaScript 扩展都被看做 BOM 的一部分。这些扩展包括:

弹出新的浏览器窗口
移动、关闭浏览器窗口以及调整窗口大小
提供 Web 浏览器详细信息的定位对象
提供用户屏幕分辨率详细信息的屏幕对象
对 cookie 的支持
IE 扩展了 BOM,加入了 ActiveXObject 类,可以通过 JavaScript 实例化 ActiveX 对象

作者:一只斗牛犬
链接:http://www.imooc.com/article/36780
来源:慕课网】

a、窗口

window.open():打开新窗口

window.close():关闭当前窗口

window.moveTo():移动当前窗口

window.resizeTo():调整当前窗口的尺寸

b、窗口的内部高度和宽度

标准浏览器:

window.innerHeight

window.innerWidth

对于 Internet Explorer 8、7、6、5:

document.documentElement.clientHeight 或者 document.body.clientHeight

document.documentElement.clientWidth 或者 document.body.clientWidth

c、屏幕对象

screen.availWidth:可用的屏幕宽度

screen.availHeight:可用的屏幕高度

d、地址栏对象

location.hostname:web 主机的域名

location.pathname:当前页面的路径和文件名

location.port:主机的端口 (80 或 443)

location.protocol:所使用的 web 协议

history.back():与在浏览器点击后退按钮相同

history.forward():与在浏览器中点击按钮向前相同

e、浏览器自带的信息

navigator.appVersion:浏览器版本

navigator.platform:浏览器平台

navigator.userAgent:浏览器User-agent header

f、计时器相关的

setInterval()和clearInterval 间隔几秒循环执行/清除定时器

setTimeout 和 clearTimeout() 间隔几秒执行(单次)/清除定时器


JS DOM与BOM的更多相关文章

  1. JS(DOM 和 BOM)

    JS(DOM 和 BOM) 常说的JS(浏览器执行的JS)包含两部分:1.JS基础知识(语法)(ECMA262标准)2.JS-Web-API(W3C标准) W3C 标准中关于 JS 的规定有:(只管定 ...

  2. JS ——DOM,BOM(包含盒模型,动画)总结

    JS盒模型 content: 通过计算后样式获取padding + content: box.clientWidth | box.clientHeightborder + padding + cont ...

  3. day 52 js学习 DOM 和BOM

    前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我们需要继续学习BOM和DO ...

  4. JS DOM(文档对象模型)与BOM(浏览器对象模型)

    在JS中,对DOM(Document Object Model)对象和BOM(Browser Object Model )对象的操作是非常重要的内容.DOM主要包括HTML文档的属性和方法,像对HTM ...

  5. 前端(十六)—— JavaScript盒子模型、JS动画、DOM、BOM

    JS盒子模型.JS动画.DOM.BOM 一.JS盒模型 1.width | height parseInt(getComputedStyle(ele, null).getPropertyValue(' ...

  6. 理清javascript的相关概念 DOM和BOM

    javascript 有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,ie和其他的浏览器风格迥异.JavaScript=语法+BOM(含DOM) ...

  7. JavaScript---网络编程(6)-Dom和Bom模型概念讲解(节点获取,window对象)

    本节讲Dom和Bom模型概念讲解(节点获取,window对象). out.js: 写了2个输出到页面的函数. function println(param){ document.write(param ...

  8. 前端基础之DOM和BOM

    前端基础之DOM和BOM JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏 ...

  9. Javascript的组成——EMACScript、DOM、BOM

    EMACScript:一种规范,JS必须准守它的约定,JS的核心. DOM:文档对象模型,W3C标准,JS访问HTML文档的接口. BOM:浏览器对象模型,没有统一的标准.JS访问浏览器的接口. EM ...

随机推荐

  1. Vue实例学习过程中碰到的小问题

    在使用插值表达式{{  }}取data中list数组中的值时把整个表达式当做文本显示了,原因不明,但是使用v-text替换插值表达式之后问题得到解决. 原因已经查明,因为第78行,定义对象car时后面 ...

  2. 高可用Redis(七):Redis持久化

    1.什么是持久化 持久化就是将数据从掉电易失的内存同步到能够永久存储的设备上的过程 2.Redis为什么需要持久化 redis将数据保存在内存中,一旦Redis服务器被关闭,或者运行Redis服务的主 ...

  3. Lesson 2-3(字符串)

    2.5 字符串 --- 字符串是不可变的. >>> str = "Hello world!" >>> str[-6:-1] = "py ...

  4. set操作

    Set操作,Set集合就是不允许重复的列表 sadd(name,values) # name对应的集合中添加元素 scard(name) 获取name对应的集合中元素个数 sdiff(keys, *a ...

  5. 强连通分量Kosaraju

    #include<cstdio> #include<algorithm> #include<iostream> #include<cstring> #i ...

  6. 【玩转开源】基于Docker搭建Bug管理系统 MantisBT

    环境Ubuntu18.04 + Docker 1. Docker Hub 链接:https://hub.docker.com/r/vimagick/mantisbt 这里直接使用docker命令的方式 ...

  7. 浅析微信小程序技术架构(原创)

    周末万里虎抽空体验了下微信小程序的DEMO,对小程序的开发有了一个基础的了解与认识,今天就来和大家分享一下我对小程序的看法. 从官方DEMO来看,小程序在技术架构上非常清晰易懂.JS负责业务逻辑的实现 ...

  8. 两个spring boot项目war部署到tomcat 其中一个无法正常启动

    Spring Boot的spring.jmx资源管理是默认打开的,而两个项目同时使用会冲突 需要在第二个.或者第三个springboot项目中增加如下配置: 1:application.propert ...

  9. 在vue-cli3中优雅的使用 icon

    首先我们得有图标 这里我们从网上下载svg文件或者UI给你导出svg文件 我们在src 文件下新建一个放置svg 文件 的文件夹 @/src/icons.将所有 icon 放在这个文件夹下. 创建 i ...

  10. OI退役

    OI退役 by war 其实初中时就想自学编程,但是这个愿望并没有很强烈,加上中考的压力就没有实践.在中考前夕看到的现在的机房,哇,计算机奥赛.但是在机房里的可能是一神和奥神,也许有凯哥. 高一寒假学 ...