作为一种脚本语言,JavaScript 代码不能独立运行,通常情况下我们需要借助浏览器来运行 JavaScript 代码,所有 Web 浏览器都支持 JavaScript。
除了可以在浏览器中执行外,也可以在服务端或者搭载了 JavaScript 引擎的设备中执行 JavaScript 代码,浏览器之所以能够运行 JavaScript 代码就是因为浏览器中都嵌入了 JavaScript 引擎,常见的 JavaScript 引擎有:
V8:Chrome 和 Opera 中的 JavaScript 引擎;
SpiderMonkey:Firefox 中的 JavaScript 引擎;
Chakra:IE 中的 JavaScript 引擎;
ChakraCore:Microsoft Edge 中的 JavaScript 引擎;
SquirrelFish:Safari 中的 JavaScript 引擎。
BOM
BOM(Browser Object Model)是浏览器对象模型的缩写。按照面向对象的编程思想,将浏览器抽象为几大对象,包括window、navigator、 location、screen、history、document。
window
window对象是一个全局对象,navigator、location、location、screen、history、document都是windows的成员对象。同时,window也表示浏览器窗口。
window.alert("欢迎访问"); //提示框
window.confirm("您是否确定?"); //询问框
window.prompt("请输入"); //输入框
window.setInterval(1000); //设定时间间隔,时间单位:毫秒
window.clearInterval(); //清除时间间隔
window.setTimeout(1000); //倒计时多少时间以后执行函数,时间单位:毫秒
window.open(); //打开窗体
window.close(); //关闭窗体
window.innerHeight; //浏览器窗体的内高
window.innerWidth;//浏览器窗体的内宽
window.outerHeight;//浏览器窗体的外高
window.outerWidth; //浏览器窗体的外宽
navigator
navigator对象表示浏览器的信息,最常用的属性包括:
navigator.appName:浏览器名称;
navigator.appVersion:浏览器版本;
navigator.language:浏览器设置的语言;
navigator.platform:操作系统类型;
navigator.userAgent:浏览器设定的User-Agent字符串。
console.log('appName = ' + navigator.appName);
console.log('appVersion = ' + navigator.appVersion);
console.log('language = ' + navigator.language);
console.log('platform = ' + navigator.platform);
console.log('userAgent = ' + navigator.userAgent);
screen
屏幕对象
screen.height:屏幕高度
screen.width:屏幕宽度
screen.colorDepth:颜色位数
console.log(screen.height)
console.log(screen.width);
console.log(screen.colorDepth);
location
location对象代表一个网页的地址信息
location.href:网页地址
location.protocol:访问协议
location.host:访问主机
location.port:访问端口号
location.pathname:访问路径
location.search:查询参数
location.hash:hash
location.href = www.example.com:8080/path/index.html?a=1&b=2#TOP
location.protocol; // 'http'
location.host; // 'www.example.com'
location.port; // '8080'
location.pathname; // '/path/index.html'
location.search; // '?a=1&b=2'
location.hash; // 'TOP'
history
history对象保存了浏览器的历史记录。对于现代Web页面来说,由于大量使用AJAX和页面交互,使用history是不可取的。
history.back():后退
history.forward():前进
history.go():前进或后退几次
//history对象
history.back(); //前进
history.forward();//后退
history.go(-1);//后退一次
document
document对象代表一个页面,由于HTML在浏览器中以DOM形式表示为树形结构,document对象就是整个DOM树的根节点。
document常见属性:
document.title:文档标题,与HTML中的title标签等价
document.bgColor:页面背景颜色
document.fgColor:页面前景色
document.fileCreateDate:文件建立日期,只读属性
document.fileModifiedDate:文件修改日期,只读属性
document.URL:可返回当前文档的URL
document.linkColor:未点击过的链接颜色
doucment.alinkColor:鼠标在此链接上的颜色
document.vlinkColor:已点击过的链接颜色
document.charset:设置字符集,简体中文为gb2312
document.fileSize:文件大小,只读属性
document.cookies:设置和读出cookie
document常见方法:
document.createElement(tag):创建HTML元素
document.getElementById(id):获得指定id值的对象
document.getElementByName(name):获得name值的对象
document.write():动态向页面写内容
document.body.appendChild(ele):向节点添加最后一个子节点
document常用事件:
document.body.onclick="func()":鼠标指针单击页面时触发
document.body.onmouseover="func()":鼠标指针移到页面时触发
document.body.onmouseout="func()": //鼠标指针移出页面时触发
document对象应用详细介绍,请看后面章节。
文章同时发表在:码农编程网 欢迎访问
本节重点:
浏览器介绍;
什么是BOM,BOM常见对象介绍;
DOM对象介绍。