web3 - BOM&DOM
一、BOM (浏览器对象模型)
浏览器对象模型 (BOM) 使 JavaScript 有能力与浏览器"对话"。
Window 对象
1.window.onresize
// 1
window.innerHeight - 浏览器窗口的内部高度(包括滚动条)
window.innerWidth - 浏览器窗口的内部宽度(包括滚动条)
// 2
document.documentElement.clientHeight
document.documentElement.clientWidth
// 3
document.body.clientHeight
document.body.clientWidth
2.Window Screen
screen.availWidth - 可用的屏幕宽度
screen.availHeight - 可用的屏幕高度
3.window.open() - 打开新窗口
4.window.close() - 关闭当前窗口
5.Window Location
function toBaidu() {
location.assign("http://www.baidu.com");
}
6.Window History
history.back() - 与在浏览器点击后退按钮相同
history.forward() - 与在浏览器中点击按钮向前相同
7.Window Navigator
window.navigator 对象包含有关访问者浏览器的信息。
<div id="example"></div>
<script>
txt = "<p>浏览器代号: " + navigator.appCodeName + "</p>";
txt+= "<p>浏览器名称: " + navigator.appName + "</p>";
txt+= "<p>浏览器版本: " + navigator.appVersion + "</p>";
txt+= "<p>启用Cookies: " + navigator.cookieEnabled + "</p>";
txt+= "<p>硬件平台: " + navigator.platform + "</p>";
txt+= "<p>用户代理: " + navigator.userAgent + "</p>";
txt+= "<p>用户代理语言: " + navigator.systemLanguage + "</p>";
document.getElementById("example").innerHTML=txt;
</script>
8.JavaScript 弹窗
警告框 alert
确认框 confirm
提示框 prompt
9.JavaScript 计时事件
window.setInterval(); //间隔指定的毫秒数不停地执行指定的代码。
window.setTimeout(); //停止指定时间后执行。
10.JavaScript Cookie
Cookie 用于存储 web 页面的用户信息。默认情况下,cookie 在浏览器关闭时删除。
document.cookie
二、DOM (文档对象模型)
通过 DOM,可访问 HTML 文档中的所有元素。
所以 JavaScript 获得了足够的能力来创建动态的 HTML。

- JavaScript 能够改变页面中的所有 HTML 元素
- JavaScript 能够改变页面中的所有 HTML 属性
- JavaScript 能够改变页面中的所有 CSS 样式
- JavaScript 能够对页面中的所有事件做出反应
三、查找 HTML 元素
1.通过 id 找到 HTML 元素
var element = document.getElementById("idName");
2.通过标签名找到 HTML 元素
var element = document.getElementsByTagName("tagName")
3.通过类名找到 HTML 元素
var element = document.getElementsByClassName("className");
四、改变 HTML 内容
1.在 JavaScript 中,document.write() 可用于直接向 HTML 输出流写内容。
// 相html 文档中添加新标签 p 的文本内容
document.write("<p>" + "内容" + "</p>");
2.修改 HTML 内容的最简单的方法时使用 innerHTML 属性。
// 修改标签 p 的文本内容
document.getElementById("p").innerHTML="新文本!";
五、改变 HTML 属性
1.document.getElementById(id).attribute = 新属性值
<!DOCTYPE html>
<html>
<body>
<img id="image" src="oldPath.png">
<script>
document.getElementById("image").src="newPath.png";
</script>
</body>
</html>
六、改变 HTML 样式
document.getElementById(id).style.property = 新样式
// 改变标签 p 的背景颜色、字体、字体大小等
document.getElementById("p").style.color="blue";
document.getElementById("p").style.fontFamily="宋体";
document.getElementById("p").style.fontSize="20";
七、改变 HTML 事件反应
this ,表示当前标签。
// 元素被点击:onclick
// 页面加载完成:onload
// 离开页面:onunload
// 输入框被修改:onchange
// input 文本框获得焦点:onfocus
// 鼠标事件:onmouseover、onmouseout
八、添加事件监听:addEventListener() 方法
你可以向任何 DOM 对象添加事件监听,不仅仅是 HTML 元素。如: window 对象。
// 给一个标签添加事件监听,当被点击时,弹出弹窗
element.addEventListener("click", function(){ alert("Hello World!"); });
九、添加或删除 HTML 元素
1.添加标签
<script>
var p = document.createElement("p");
var node = document.createTextNode("这是一个新段落。");
p.appendChild(node);
var element = document.getElementById("div");
element.appendChild(p);
</script>
2.删除标签
<script>
var parent=document.getElementById("div");
var child=document.getElementById("p");
parent.removeChild(child);
</script>
web3 - BOM&DOM的更多相关文章
- JavaScript:BOM&DOM
BOM(Browser Object Model): feature: 1.BOM has no relevant standards. 2.The fundamental object of BOM ...
- JavaScript BOM DOM 对象
title: JavaScript BOM DOM 对象 tags: JavaScript --- browser object model document onject model BOM对象 w ...
- 【转】了解nodejs、javascript间的关系!bom&dom&ecmascript
地址:https://www.cnblogs.com/JetpropelledSnake/p/9450810.html bom&dom:https://www.cnblogs.com/wang ...
- BOM DOM
http://www.cnblogs.com/yexiaochai/archive/2013/05/28/3102674.html DOM Document Object Model 文档对象模型 一 ...
- JS学习四(BOM DOM)
BOM Screen对象 console.log(window.width);//屏幕宽度 console.log(window.height);//屏幕高度 conso ...
- js BOM DOM
BOM对象 BOM(浏览器对象模型),可以对浏览器窗口进行访问和操作.使用 BOM,开发者可以移动窗口.改变状态栏中的文本以及执行其他与页面内容不直接相关的动作. 简而言之就是使 JavaScript ...
- BOM,DOM常见操作和DHML
BOM (Browser Object Model)浏览器对象模型,控制浏览器的一些行为 window对象 代表一个HTML文档 属性 页面导航的5个属性 self, parent, top, ope ...
- BOM&DOM
BOM(浏览器对象模型) 1. location相关 . location.href 获取当前url . location.href="http://www.sogo.com" 跳 ...
- Python12/25--前端之BOM/DOM
一.DOM 1. 什么是DOM 文档对象模型 Document Object Model 文档对象模型 是表示和操作 HTML和XML文档内容的基础API 文档对象模型,是W3C组织推荐的处理可扩展标 ...
随机推荐
- nginx中支持.htaccess并禁止php在特定目录无法运行
在nginx.conf中的server里面 include /yjdata/www/thinkphp/.htaccess; 在对应的目录下面创建.htaccess,并填写以下内容,(image是跟目下 ...
- python_如何为创建大量实例节省内存?
案例: 某网络游戏中,定义了玩家类Player(id, name, status,....),每有一个在线玩家,在服务器程序内有一个Player的实例,当在线人数很多时,将产生大量实例(百万级别) 需 ...
- 爬虫_url去重策略
如何对url去重? 将访问url保存到数据库中,效率低,最简单 将url保存到set中,查询速度快,但当url达到1亿多条时候,占用太多内存空间 将url经过md5等方法哈希后保存到set中 用bit ...
- Linux指令--telnet
telnet命令通常用来远程登录.telnet程序是基于TELNET协议的远程登录客户端程序.Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式.它为用户 ...
- 微信支付JSAPI公众号支付授权目录
详情 http://yangjunwei.com/a/1815.html
- 【Python3之迭代器,生成器】
一.可迭代对象和迭代器 1.迭代的概念 上一次输出的结果为下一次输入的初始值,重复的过程称为迭代,每次重复即一次迭代,并且每次迭代的结果是下一次迭代的初始值 注:循环不是迭代 while True: ...
- php之快速排序
<?phpfunction shell_sort(array $arr){ $right=$left = array(); $Rights=$Lefts = array() ...
- LVS负载均衡介绍
LVS介绍 负载均衡器 • 链路负载均衡 (三层负载均衡) • 服务器负载均衡 (四层负载均衡) • 应用层负载均衡 (七层负载均衡) • 全局负载均衡 基本情况 • 实现服务器负载均衡 • 核心功能 ...
- spring boot 中实现兼容不同的请求类型的方法。
比如一个接口,既想实现请求参数是application/json,又想实现form提交,改怎么做呢?用postman去测试,发现不可能做到两全其美. 我有一个方法,就是不用requestbody,也可 ...
- 我的前端故事----关于前端数据&逻辑的思考
最近重构了一个项目,一个基于redux模型的react-native项目,目标是在混乱的代码中梳理出一个清晰的结构来,为了实现这个目标,首先需要对项目的结构做分层处理,将各个逻辑分离出来,这里我是基于 ...