js-BOM

BOM
浏览器对象模型;

BOM可以让我们通过JS来操作浏览器;
BOM对象:
1、Window:代表的是整个浏览器的窗口,同时也是网页中的全局对象;
2、Navigator:代表当前浏览器的信息,通过该对象可以来识别不同的浏览器;
3、Location:代表当前浏览器的地址信息,可以获取地址栏信息,或者操作浏览器跳转页面;
4、History:代表浏览器的历史记录,可以通过该对象来操作浏览器的历史记录;
由于隐私原因,该对象不能获取到具体的历史记录,只能操作浏览器向前或者向后翻页,而且该操作只在档次访问时有效。
5、Screen:代表用户的屏幕信息,通过该对象可以获取到用户的显示器的相关信息。
这些BOM对象都在浏览器作为window对象的属性保存的。

Navigator
根据navigator.userAgent字段判断浏览器类型,仅供参考:

  • 检验浏览器类型
function checkBrowser() {
    var ua = navigator.userAgent;
    if ("ActiveXObject" in window) {
        return "ie";
    }else if (/edg/i.test(ua)) {
        return "edge";
    } else if (/firefox/i.test(ua)) {
        return "firefox";
    } else if (/opera|opr/i.test(ua)) {
        return "opera";
    } else if (/chrome/i.test(ua)) {
        return "chrome";
    } else if (/safari/i.test(ua)) {
       return "safari";
    }
}

自己验证了IE、火狐、谷歌、Edge浏览器,如有问题请指正!

History
可以用来操作浏览器向前向后翻页;
history.length属性:获取当前访问链接的数量;
history.back()方法:可以返回到上一个页面,作用和浏览器回退按钮一样;
history.forward()方法:可以跳转下一页面,作用和浏览器的前进按钮一样;
history.go()方法:参数传正数向前跳转页面,传负数向后跳转页面;

Location
直接打印location,可以获取到地址栏的信息(当前页面完整路径);
直接修改location为一个完整的路径或相对路径,则可以自动跳转到该路径。

location = "./a.html";
location.assign("./a.html");

window.location.href 返回当前页面的href (URL)
window.location.hostname 返回 web 主机的域名
window.location.pathname 返回当前页面的路径或文件名
window.location.protocol 返回使用的 web 协议(http:https:
window.location.assign 加载新文档,会生成历史记录
window.location.reload 重新加载页面(刷新页面),传true参数,则会强制刷清空页面缓存
window.location.repace替换一个跳转一个页面,但是不会生成历史记录

定时器(Timing)
window 对象允许以指定的时间间隔执行代码。这些时间间隔称为定时事件。

通过 JavaScript 使用的有两个关键的方法:
setTimeout(function, milliseconds):在等待指定的毫秒数后执行函数(延时调用),只执行一次。
setInterval(function, milliseconds): 等同于 setTimeout(),但持续重复执行该函数。
setTimeout()setInterval() 都属于 HTML DOM Window 对象的方法。
clearInterval() 方法停止 setInterval() 方法中指定的函数的执行。

var timer = setInterval(() => {
        time++;
        if (time > 10) {
            clearInterval(timer);
            return;
        }
        div.innerHTML = time.toString();
}, 1000);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • BOM Browser Object Model 浏览器对象模型 作用:能够在 JS 中与浏览器实现“对话” 没有...
    天蓝蓝TL阅读 401评论 0 0
  • BOM Borwser Object Model --- 浏览器对象模型顶级对象:window window对象 ...
    FE40536_a066阅读 216评论 0 0
  • BOM BOM的概述: bom 称为浏览器对象模型(bowser object model),也就意味他可以获取浏...
    喷火小王八阅读 200评论 0 1
  • BOM 浏览器对象模型BOM可以使我们通过JS来操作浏览器 BOM对象: Window代表的是整个浏览器的窗口,同...
    xiaohan_zhang阅读 226评论 0 1
  • BOM 浏览器对象模型 我们的BOM对象都是作为window对象的属性保存的,我们可以通过window对象来访问 ...
    蘭小木阅读 362评论 0 1