【JavaScript】BOOOOOM!

有关BOM的细致属性和要领请参阅相干文档,这里只枚举经常使用的属性和要领,不做其他赘述。

window

window示意浏览器的一个实例。它既是经由过程JavaScript接见浏览器窗口的一个接口,又是ECMAScript划定的global对象。一切在全局作用域声明的变量和函数都邑成为window对象的属性和要领。全局变量不能经由过程delete操纵符删除(经由过程var在全局作用域中定义,其configurablefalse),而直接在window对象上定义的属性能够。

frames类数组对象,保留着页面中一切的框架,经由过程数字索引(从0最先,从上到下,从左到右)接见响应的window对象。
top一直指向最外层框架,也就是浏览器窗口。
parent指向当前框架的直接上层框架。
self一直指向window,实际上,selfwindow对象能够相互接见。
name框架的称号。

window.open()既能够导航到一个特定的URL,也能够翻开新的浏览器窗口。

setTimeOut()clearTimeOut()间歇挪用。
setInterval()clearInterval()超时挪用。

体系对话框:alert()confirm()prompt()

function inputName() {
    var areYou = prompt("What't is you name?", "your name");
    if (areYou !== null && areYou !== "your name") {
        if(confirm("Is your name " + areYou + "?")) {
            alert("Your name is " + areYou);
        } else {
            inputName();
        }
    } else {
        alert("Please input your name again!");
        inputName();
    }     
}
inputName();

location

location供应了与当前窗口中加载的文档有关的信息,还供应了一些导航功用。它既是window对象的属性,也是document对象的属性。也就是说。window.locationdocument.location援用的是统一对象。

  • 查询字符串参数

       function getQueryStringArgs() {
           var qs = (location.search.length > 0) ? location .search.substring(1) : '',    //获得查询字符串并去掉开首的问号。location.search猎取URL中的查询字符串
               args = [],                                                                //保留终究数据的数组
               items = qs.length ? qs.split('&') : [],                                    //将每一项名值对分离隔保留在items中
               item = null,                                                            //设置每一项名值对
               name = null,                                                            //每一项的名
               value = null,                                                            //每一项的值
               len = items.length;                                                        
           for (var i=0; i<len; i++) {
               item = items[i],split('=');                                                //将每一项名值对的名和值分割开保留在数组中
               name = decodeURIComponent(item[0]);                                        //保留名。decodeURIComponent()解码
               value = decodeURIComponent(item[1]);                                    //保留值
               if (name.length) {
                   args[name] = value;
               }
           }
           return args;
       }
  • 位置操纵

location.href经常使用来翻开新的浏览器位置。
location.replace()接收一个URL,跳转到这个位置,但不会再历史纪录中天生新的纪录。
location.reload()假如页面没有转变,从缓存中从新加载,否则从服务器加载。假如为其通报参数true,则强迫从服务器从新加载。

navigator

navigator对象多用于检测浏览器范例。

  • 检测插件

       //检测插件(IE中无效)
       function hasPlugin(name) {
           name = name.toLowerCase();
           for (var i=0; i<navigator.plugins.length; i++) {
               if (navigator.plugins[i].name.toLowerCase().indexOf(name) > -1) {
                   return true;
               }
           }
           return false;
       }
    
       //检测IE中的插件
       function hasIEPlugin(name) {
           try {
               new ActiveXObject(name);
               return true;
           } catch(ex) {
               return false;
           }
       }
    
       //检测一切浏览器中的Flash插件
       function hasFlash() {
           var result = hasPlugin('Flash');
           if (!result) {
               result = hasIEPlugin('ShockwaveFlash.ShockwaveFlash');
           }
           return result;
       }
    

screen

screen对象用来表明客户端的才能,包含浏览器窗口外部的显示器信息。

history

history对象保留着用户上网的历史纪录,从窗口被翻开的那一刻算起。

history.go()接收要行进或许退却的页面数。正数行进,负数退却。
history.back()退却一页,相当于history.go(1)
history.forward()行进一页,相当于history.go(-1)
history.length历史纪录的数目。

转载请说明出处:https://segmentfault.com/a/1190000004592551

文章不定期更新完美,假如能对你有一点点启示,我将不胜幸运。

    原文作者:hiYoHoo
    原文地址: https://segmentfault.com/a/1190000004592551
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞