BOM

BOM(Bowser Object Model)   浏览器对象模型

提供了独立于页面内容而与浏览器就行交互的对象,核心对象是window。

(BOM 无标准支持)

Navigator

浏览器代理检测    navigator.userAgent

判断浏览器类型

var str = navigator.userAgent;
if(str.indexOf("Chrome") != -1){
alert("谷歌");
}else if(str.indexOf("Firefox") != -1){
alert("火狐")
}

通过   navigator.userAgent  可以检测是移动端还是PC端

var arr = ["Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"];
var str = navigator.userAgent;
for(var i = 0; i < arr.length; i++){
if(str.indexOf(arr[i]) != -1){
location.href = "mobile.html";
}
}

BOM  Location

属性:hash、host、hostname、href、pathname、port、protocol、search

方法:assign(url), replace(url) , reload()

console.log(location.href);

location.href = "http://www.baidu.com";

location.assign("mobile.html");      //跳转了可以返回

location.replace("mobile.html");    //跳转了不能返回

reload();                                     //刷新页面;

BOM Histiry

history对象保存着用户上网的历史记录,从窗口被 打开的那一刻算起.

后退一页  history.go(-1)        history.back()

前进一页  history.go(1)         history.forward()

前进两页  history.go(2)

(必须有历史记录才能前进后退)

scrollTop:  可视区域距离页面顶部的距离

例:scrollTop=document.documentElement.scrollTop  || document.body.scrollTop

scrollLeft:    可视区域距离页面左边的距离

例:scrollLeft=document.documentElement.scrollLeft  || document.body.scrollLeft

clientWidth:  可视区域的宽度

例:document.documentElement.clientWidth

clientHeight:   可视区域的高度

例:document.documentElement.clientHeight

onload & onscroll & onresize

//页面加载完毕或者资源加载完毕时触发
            window.onload = function(){
                console.log(box);
            }
            
        </script>
        <div id="box"></div>

//滚动条滚动时触发
window.onscroll = function(){
var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
console.log(scrollTop);
}
//浏览器窗口改变时触发
window.onresize = function(){
console.log("aaaa");
}

 定时器和延时器

setInterval()        定时器, 每隔一段时间调用某个函数(调用多次)只产生一个计时器,只能通过clearInterval()方法才能停止该方法

setTimeout()        延时器, 隔一段时间调用某个函数(只调用一次)相当于每次产生一个计时器,计时器时间到了就会销毁。

系统自带弹出式消息提醒的方式 

  1. window.alert(string);警告框       (无返回值)

  2. window.confirm();确认框 返回值为boolean 确定:true 取消:false                 (有返回值)

  3. window.prompt(); 可输入的对话框 返回值为string 输入的信息

JavaScript 之 BOM的更多相关文章

  1. 第一百一十一节,JavaScript,BOM浏览器对象模型

    JavaScript,BOM浏览器对象模型 学习要点: 1.window对象 2.location对象 3.history对象 BOM也叫浏览器对象模型,它提供了很多对象,用于访问浏览器的功能.BOM ...

  2. 第三章 JavaScript操作BOM对象

    第三章   JavaScript操作BOM对象 一.window对象 浏览器对象模型(BOM)是javascript的组成之一,它提供了独立与浏览器窗口进行交换的对象,使用浏览器对象模型可以实现与HT ...

  3. JavaScript的BOM和DOM

    JavaScript的BOM和DOM 1,window对象,所有浏览器都支持window对象,它表示浏览器窗口 BOM(browser Object Model)是指浏览器对象模型,它使JavaScr ...

  4. javascript之BOM对象(一window对象)

    javascript包含三个部分,ECMAScript,BOM和DOM.ECMAScript是javascript的核心,包含javascript的基础语法.在Web中使用javascript,BOM ...

  5. 使用jQuery快速高效制作网页交互特效--JavaScript操作BOM对象

    JavaScript操作BOM 一.window对象: 二.window对象的属性和方法 1.windows对象的常用属性: 语法:window.属性名="属性值" 2.windo ...

  6. 8.5 JavaScript的BOM(二)

    8.5 JavaScript的BOM 即 浏览器对象模型(Browser Object Model) 浏览器对象包括 一.Window(窗口) 如果需要打开一个新的网站,应该通过超级链接等方式让用户主 ...

  7. JavaScript(4)---BOM详解

    JavaScript(4)---BOM详解 之前写过一篇有关DOM的博客:JavaScript(2)---DOM详解 DOM有个顶级对象叫:document.同样BOM中也有顶级对象叫 window. ...

  8. JavaScript的BOM对象

    JavaScript的BOM对象 BOM:浏览器对象模型 JavaScript和浏览器的关系:JavaScript的诞生就是为了能够让它再浏览器中运行. 1. 操作BOM对象 1.1 window w ...

  9. [JavaScript之BOM与DOM]

    [JavaScript之BOM与DOM] BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行"对话". DOM ( ...

  10. javascript中BOM部分基础知识总结

    一.什么是BOM      BOM(Browser Object Document)即浏览器对象模型.      BOM提供了独立于内容 而与浏览器窗口进行交互的对象:      由于BOM主要用于管 ...

随机推荐

  1. Oracle表空间碎片整理SHRINK与MOVE

    整理表碎片通常的方法是move表,当然move是不能在线进行的,而且move后相应的索引也会失效,oracle针对上述不足,在10g时加入了shrink,那这个方法能不能在生产中使用呢?        ...

  2. react和vue,angular的比较

    就这几天我所了解到react情况和大家探讨一下子react的知识: react由facebook团队维护的一套框架,已经应用在instagram网站上了,react以其独特的性能优化方案,正在被越来越 ...

  3. restful规范快速记忆

    restful规范: 十个规则: 用户发来请求,url必须: 1.因为是面向资源编程,所以每个URL代表一种资源,URL中尽量不要用动词,要用名词 2.尽量使用HTTPS,https代替http 3. ...

  4. undefined的几种情况

    1.变量声明了,但是没有赋值: 2.一个变量声明了,并且赋值了undefined: var a = undefined; 3.一个对象中,获取某个不存在的属性,值也是undefined

  5. 复习-css边框和背景属性

    css边框和背景属性 border:所有边框属性 border-width:四条边框的宽度 border-style:设置边框样式,主要有dotted.solid.double border-colo ...

  6. Navigation包中的move_base和amcl实现自动驾驶

    安装功能包: 1.安装导航定位包navigation $ sudo apt-get install ros-indigo-navigation 2.由于导航包在/cmd_val下发布的移动数据加速度会 ...

  7. laravel 分页使用

    分页 //对数据库结果分页 $users = DB::table('users')->paginate(15); //可以对 Eloquent 模型分页: $allUsers = User::p ...

  8. c#查找窗口的两种办法

    原文最早发表于百度空间2009-06-17 1.process.MainWindowTitle(这个只能获取一部分窗口)2.EnumWindows(用windows API)

  9. Struts2 使用Jquery+ajax 文件上传

    话不多说 直接上代码 前台js: var formData = new FormData(); formData.append("file1",$("#file1&quo ...

  10. Architectural principles

    原文 "If builders built buildings the way programmers wrote programs, then the first woodpecker t ...