浏览器对象模型


本节重点

  • BOM 模型的主要应用 windows对象模型 + location对象 + history对象

1. windows对象模型

每个新打开的窗口都有自己的window对象

windows对象模型

window 对象下的六大属性也都是对象

  1. window的主要属性

    window的主要属性
  2. window的主要方法

    window的主要方法
  3. 系统对话框 alert() / confirm() / prompt()

    • alert() 弹出警告对话框

    • confirm() 可以点击确定或者取消(得到相应的 ture 或 false)

    • prompt() 提示框,可以得到返回值

        var num = prompt('请输入一个数字', 0); 
        alert(num);
      
    • print(); 得到打印对话框

    • find(); 得到查找对话框

    • 浏览器的底部状态值(系统属性)

        defaultStatus = '状态栏默认文本';  //浏览器底部状态栏初始默认值
      
        status = '状态栏文本 ';           //浏览器底部状态栏设置值
      
  4. window.open() 新建浏览器窗口

    • window.open() 接收四个参数

        第一个: 需要加载的 URL 地址
      
        第二个: 窗口的名称/窗口的目标
      
        第三个: 表示浏览器特性的字符串
      
        第四个: boolean 值 (表示取代当前正在进行的页面)
      
    • 第三个字符串参数的传值

设置 说明
width 数值 新窗口的宽度 ,不能小于100
height 数值 新窗口的高度, 不能小于100
top 数值 新窗口的坐标, 不能为负值
left 数值 新窗口的坐标, 不能为负值
location yes/no 在浏览器中是否显示地址栏
menubar yes/no 在浏览器中是否显示菜单栏
resizable yes/no 是否可以拖动改变浏览器的大小
scrollbars yes/no 是否为溢出的内容显示浏览器的滚动条
status yes/no 是否显示浏览器下面的状态栏
toolbar yes/no 是否显示浏览器的工具栏
- 第三个参数的设置:

        open('http://www.baidu.com','baidu','width=400,height=400,top=200,left=200,toolbar=yes');
  1. 窗口的位置和大小

    • 窗口的位置信息

        screenLeft 和 screenTop   //IE 支持属性
        
        screenX 和 screenY       //firefox 支持属性
      
    • 窗口的 大小 信息

        innerWidth 和 innerHeight    //返回浏览器窗口的尺寸
        
        outerWidth 和 outerHeight  //浏览器窗口 + 边框的尺寸
      

      IE中的尺寸获取

        document.documentElement.clientWidth
        
        document.documentElement.clientHeight 
      
  2. 间歇调用和超时调用

    • 超时调用

        var timeOut = setTimeout(function(){},time); 
      

      说明:超时调用返回一个数值信息 timeOut,表示该超时调用的 ID

        clearTimeout(timeOut);   //可以通过该 ID 信息清除超时调用
      
    • 间歇调用

         var interval = setInterval(function(){},time);
      

      间歇调用表示每隔 time 时长的时间调用一次,反复执行

      因为间歇调用是反复执行的 所以在必要的时候清除间歇调用是非常必要的

        说明:间歇调用返回数值信息interval,表示间歇调用的 ID
        
        clearTimeout(interval);     //清除间歇调用
      
    • 使用超时调用模拟间歇调用

      一般认为,使用超时调用来模拟间歇调用是一种最佳模式 。在开发环境下,很少使用真 正的间歇调用,因为需要根据情况来取消 ID,并且可能造成同步的一些问题,我们建议不使用间歇调用,而去使用超时调用。

        var num = 0; 
        var max = 5;
        function timeOut() {
            num++;
            if (num == max) {
                alert('5 秒后结束!'); 
            } else {
                setTimeout(box, 1000);
            }
        }
        
        setTimeout(timeOut,1000);
      
2. Location 对象

window.location 和 document.location 等效。大家想想为什么呢??
  1. location对象的属性 (获取当前浏览器的URL)
属性 描述的URL的内容
hash 若存在,表示锚点部分
host 主机名 : 端口号
hostname 主机名
href 整个URL
pathname 路径名
port 端口号
search 查询字符串(包括传递的参数等等)
  1. Location对象的方法
方法 功能
assign("url") 跳转到指定的 URL,与 href 等效
reload() 重载当前的url , 无参数
replace("url") 用新的 URL 替换当前的 URL.
3. history 对象

保存着用户上网的记录,从窗口被打开的那一刻算起。
  1. history 对象的属性
属性 描述 URL 中的部分
length 描述当前的历史记录中的个数
  1. history 对象的方法
属性 实现的功能
back() 向前一个历史记录,类似后退
forword() 向后一个历史记录 , 类似前进
go(num) 根据参数设置向前或者向后
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,290评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,399评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,021评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,034评论 0 207
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,412评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,651评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,902评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,605评论 0 199
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,339评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,586评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,076评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,400评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,060评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,083评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,851评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,685评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,595评论 2 270

推荐阅读更多精彩内容