BOM
浏览器对象模型
- window 代表浏览器的整个窗口,是网页中的全局对象
- navigator 代表当前浏览器的信息
- location 当前浏览器的地址栏信息
- history 可以在当次访问时,操作浏览器向前或向后翻页
- screen 可以获取用户显示器的信息
这些BOM对象在浏览器中都是作为window对象的属性保存的,可以通过window对象来使用,也可以直接使用,使用时首字母小写。
navigator
一般我们会使用userAgent
来判断浏览器的信息。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
window.onload = function(){
// console.log(navigator.userAgent);
//Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
//通过正则表达式对userAgent进行判断
var ua = navigator.userAgent;
if(/chrome/i.test(ua)){
alert("你是谷歌");
}else if(/firefox/i.test(ua)){
alert("你是火狐");
}else if (/msie/i.test(ua)){
alert("你是IE");
//通过IE特有的对象来判断浏览器是不是IE11
//检查一个对象里是否包含某个属性 "属性" in 对象
}else if ("ActiveXObject" in window){
alert("你是IE11");
};
};
</script>
</head>
<body>
</body>
</html>
history
属性
- length 可以返回历史页面个数
方法
back()
相当于回撤按钮forward()
相当于前进按钮go()
需要一个整数作为参数
location
如果直接打印就可以直接获取当前页面的完整路径
如果修改location
,则页面会跳转到该路径,并生成历史记录
location
有众多属性,可以返回完整路径中的部分内容
方法:
assign()
用来跳转到其他页面,作用和直接修改location一样
location = "http://www.baidu.com";
location.assign("http://www.baidu.com");
reload()
重新加载当前文档,如果传入true作为参数,则会强制清空缓存刷新页面replace()
可以使用一个新的页面替换当前页面,不会生成历史记录