成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

javascript--BOM

explorer_ddf / 1476人閱讀

摘要:對象的和新對象是它表示瀏覽器的一個實例。在瀏覽器中,對象有雙重角色,它即是通過訪問瀏覽器窗口的接口,又是規(guī)定的對象。如果不存在在中,則取得和的值。

window對象
BOM的和新對象是window,它表示瀏覽器的一個實例。在瀏覽器中,window對象有雙重角色,它即是通過javascript訪問瀏覽器窗口的接口,又是ECMAScript 規(guī)定的 Global 對象。著意味著在網(wǎng)頁中定義的任何一個對象、變量和函數(shù),都以window作為其Global對象,因此有訪問parseInt()等方法。

全局作用域
由于 window 對象同時扮演著 ECMAScript中 Global 對象的角色,因此所有在全局作用域中聲明的變量、函數(shù)都會變成 window 對象的屬性和方法

var age = 29;
function sayAge(){
alert(this.age);
}
alert(window.age); //29
sayAge(); //29
window.sayAge(); //29

我們在全局作用域中定義了一個變量 age 和一個函數(shù) sayAge() ,它們被自動歸在了 window 對象名下。于,可以通過 window.age 訪問變量 age,可以通過 window.sayAge() 訪問函數(shù) sayAge()由于 sayAge() 存在于全局作用域中,因此 this.age 被window.age ,最終顯示的仍然是正確的結(jié)果。
拋開全局變量會成為 window 對象的屬性不談,定義全局變量與window 對象上直接定義屬性還是有一點差別:全局變量不能通過 delete 操作符刪除,而直接在 window 對象上的定義的屬性可以。

var age = 29;
window.color = "red";
//在 IE < 9 時拋出錯誤,在其他所有瀏覽器中都返回 false
delete window.age;
//在 IE < 9 時拋出錯誤,在其他所有瀏覽器中都返回 true
delete window.color; //returns true
alert(window.age); //29
alert(window.color); //undefined

另外,還要記住一件事:嘗試訪問未聲明的變量會拋出錯誤,但是通過查詢 window 對象,可以知道某個可能未聲明的變量是否存在。

//這里會拋出錯誤,因為 oldValue 未定義
var newValue = oldValue;
//這里不會拋出錯誤,因為這是一次屬性查詢
//newValue 的值是 undefined
var newValue = window.oldValue;

本章后面將要討論的很多全局 JavaScript 對象(如 location 和 navigator )實際上都是 window對象的屬性。

窗口關(guān)系及框架

如果頁面中包含框架,則每個框架都擁有自己的 window 對象,并且保存在 frames 集合中。在 frames集合中,可以通過數(shù)值索引(從 0 開始,從左至右,從上到下)或者框架名稱來訪問相應(yīng)的 window 對象。每個 window 對象都有一個 name 屬性,其中包含框架的名稱.

窗口位置

window.screenLeft : window.screenX;

var topPos = (typeof window.screenTop == "number") ?    window.screenTop : window.screenY;
```
這個例子運用三元操作符首先確定 screenLeft 和 screenTop 屬性是否存在,如果是(在 IE、Safari、Opera 和 Chrome 中),則取得這兩個屬性的值。如果不存在(在 Firefox 中),則取得screenX和 screenY 的值。

窗口大小

    var pageWidth = window.innerWidth,
    pageHeight = window.innerHeight;
    if (typeof pageWidth != "number"){
    if (document.compatMode == "CSS1Compat"){
    pageWidth = document.documentElement.clientWidth;
    pageHeight = document.documentElement.clientHeight;
    } else {
    pageWidth = document.body.clientWidth;
    pageHeight = document.body.clientHeight;
    }
    }

導(dǎo)航和打開窗口
彈出窗口window.open()
安全限制

系統(tǒng)對話框

location對象

查詢字符串參數(shù)

function getQueryStringArg () {
    var qs = (window.location.search.length > 0 ? location.search.substring(1) : ""),
        args = {},
        items = qs.length ? qs.split("&") : [],
        item = null,
        name = null,
        value = null,
        i = 0,
        len = items.length;
    for (i = 0; i < len; i++) {
        item = items[i].split("=");
        name = decodeURIComponent(item[0]);
        value = decodeURIComponent(item[1]);
        if (name.length) {
            args[name] = value;
        }
    }
    return args;
}

位置操作

history對象
//后退一頁
history.go(-1);
//前進(jìn)一頁
history.go(1);
//前進(jìn)兩頁
history.go(2);
//后退一頁
history.back();
//前進(jìn)一頁
history.forward()
if (history.length == 0){
//這應(yīng)該是用戶打開窗口后的第一個頁面
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/100579.html

相關(guān)文章

  • javascript bom

    摘要:包含是瀏覽器對象,全拼為包含什么包含以下打開窗口要打開的地址新窗口的位置默認(rèn)鏈接到新頁面關(guān)閉窗口只能關(guān)閉從網(wǎng)頁中打開的頁面系統(tǒng)對話框系統(tǒng)彈窗確認(rèn)取消彈窗彈出能輸入文本的對話框定時器定時器清除間接同上對象包含大量有關(guān)瀏覽器的信息,在檢測瀏 javascript包含(ecmascriptes3,5,6)bom dom Bom是瀏覽器對象,全拼為Browser Object Model Bo...

    venmos 評論0 收藏0
  • javascript bom

    摘要:包含是瀏覽器對象,全拼為包含什么包含以下打開窗口要打開的地址新窗口的位置默認(rèn)鏈接到新頁面關(guān)閉窗口只能關(guān)閉從網(wǎng)頁中打開的頁面系統(tǒng)對話框系統(tǒng)彈窗確認(rèn)取消彈窗彈出能輸入文本的對話框定時器定時器清除間接同上對象包含大量有關(guān)瀏覽器的信息,在檢測瀏 javascript包含(ecmascriptes3,5,6)bom dom Bom是瀏覽器對象,全拼為Browser Object Model Bo...

    zhangke3016 評論0 收藏0
  • js bom location對象

    摘要:一對象獲取獲取服務(wù)器名稱和端口號獲取服務(wù)器名稱和端口號獲取服務(wù)器名稱和端口號獲取不帶端口號的服務(wù)器名稱獲取不帶端口號的服務(wù)器名稱獲取整個獲取整個返回中的目錄和或文件名返回中的目錄和或文件名返回的端口號返回的端口號返回的協(xié)議返回的協(xié)議返回的查 一、location對象 http://localhost:8881/javascript/BOM/window.html?name=bob&ag...

    Carson 評論0 收藏0
  • Javascript BOM簡介

    摘要:簡介瀏覽器對象模型通過對象來訪問瀏覽器當(dāng)前文件的框架集合瀏覽器環(huán)境信息瀏覽器及其相關(guān)功能的信息瀏覽器本地信息屬性等方法刷新有歷史記錄替換頁面無歷史記錄大于向后跳轉(zhuǎn)個界面是的屬性本身是函數(shù)類型的屬性,賦值時需要接受一個函數(shù)當(dāng)頁面加載完畢才會執(zhí) BOM簡介 BOM Browser Object Model 瀏覽器對象模型 showImg(https://segmentfault.com...

    tabalt 評論0 收藏0
  • JavaScript BOM——“l(fā)ocation 對象”的注意要點

    摘要:對象基本介紹是最有用的對象之一,它提供了與當(dāng)前窗口中加載的文檔有關(guān)的信息。設(shè)置或返回主機名和當(dāng)前的端口號。設(shè)置或返回當(dāng)前的協(xié)議。另外,也可以修改對象的其他屬性來改變。并且用戶不能返回到值錢的頁面。 location 對象基本介紹 location 是最有用的 BOM 對象之一,它提供了與當(dāng)前窗口中加載的文檔有關(guān)的信息。還提供了一些導(dǎo)航功能。下面是 location 對象的所有屬性: 假...

    未東興 評論0 收藏0

發(fā)表評論

0條評論

explorer_ddf

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<