干熟妇在线视频午夜剧场一级A级|99成人香视频日本两性激情视频|久久 午夜福利无码精品人妻一区|热久久超碰精品精品少妇一区二区|五月天综合在线国产一区免费视频|亚洲成人中心热re久久99|亚洲国产怡红院丁香五月综合h|玖玖九久久久午夜射精视频

十年專(zhuān)注于品牌網(wǎng)站建設(shè) 十余年專(zhuān)注于網(wǎng)站建設(shè)_小程序開(kāi)發(fā)_APP開(kāi)發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號(hào) 掃一掃關(guān)注
小程序
tel-icon全國(guó)服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開(kāi)百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

跨瀏覽器窗口大小兼容js及innerWidth、innerHeight、outerWidth和outerHeight屬性

百恒網(wǎng)絡(luò) 2013-04-29 12509

跨瀏覽器確定一個(gè)窗口的大小不是一件簡(jiǎn)單的事。Firefox.Safari.Opera和Chrome均為此提供了4個(gè)屬性:innerWidth、innerHeight、 outerWidth和outerHeight。在Safari和Firefox中,outerWidth和outerHeight返回瀏覽器窗口本身的尺寸(無(wú)論是從最外層的window對(duì)象還是從某個(gè)框架訪問(wèn))。在Opera中,這兩個(gè)屬性的值表示頁(yè)面視圖容器①的大小。而innerWidth和innerHeight則表示該容器中頁(yè)面視圖區(qū)的大小(減去邊框?qū)挾?。在Chrome中,outerWidth.outerHeight與innerWidth,innerHeight返回相同的值,即視口(viewport)大小而非瀏覽器窗口大小。

IE沒(méi)有提供取得當(dāng)前瀏覽器窗口尺寸的屬性;不過(guò),它通過(guò)DOM提供了頁(yè)面可見(jiàn)區(qū)域的相關(guān)信息。

在IE以及Firefox、Safari、Opera和Chrome中,document.documentElement.clientWidth和

document.documentElement.clientHeight中保存了頁(yè)面視口的信息。在IE6中,這些屬性必須在標(biāo)準(zhǔn)模式下才有效;如果是混雜模式,就必須通過(guò)do crunent.body.clientWidth和document.body.clientHeight取得相同信息。而對(duì)于混雜模式下的Chrome,則無(wú)論通過(guò)docurnent.documentElement還是document.body中的clientWidth和clientHeight屬性,都可以取得視口的大小。

雖然最終無(wú)法確定瀏覽器窗口本身的大小,但卻可以取得頁(yè)面視口的大小,如下所示:

var pageWidth=window.innerWidth,

pageHeight=window.innerHeight;

if ( typeof pageWidth !="number")t

if ( document.compatMode== "CSSICompat"){

pageWidth=document.documentElement.clientWidth;

pageHeight=document.documentElement.clientHeight;

} else{

pageWidth=document.body.clientWidth;

pageHeight=document.body.clientHeight;

}

}

在以上代碼中,我們首先將window.innerWidth和window.innerHeight的值分別賦給了pageWidth和pageHeight。然后檢查pageWidth中保存的是不是一個(gè)數(shù)值;南昌網(wǎng)站設(shè)計(jì)公司技術(shù)認(rèn)為如果不是,則通過(guò)檢查document.compatMode來(lái)確定頁(yè)面是否處于標(biāo)準(zhǔn)模式。如果是,則分別使用document.documentElement.clientWidth和document.documentElement.clientHeight的直。否則,就使用document.body.clientWidth和document.body.clientHeight的值。

另外,使用resizeTo()和resizeBy()方法可以調(diào)整瀏覽器窗口的大小。這兩個(gè)方法都接收兩個(gè)參數(shù),其中resizeTo()接收瀏覽器窗口的新寬度和新高度,而resizeBy()接收新窗口與原窗口的寬度和高度之差。來(lái)看下面的例子:

//調(diào)整到100×100

window.resizeTo(100,100);

//調(diào)整到200 x150

window.resizeBy(IOO,50);

//調(diào)整到300x300

window.resizeTo(300,300);

南昌網(wǎng)絡(luò)公司工程師提醒廣大站長(zhǎng)需要注意的是,這兩個(gè)方法與移動(dòng)窗口位置的方法類(lèi)似,也有可能被瀏覽器禁用;而且,在Opera和IE 7(及更高版本)中默認(rèn)就是禁用的。另外,這兩個(gè)方法同樣不適用于框架,而只能對(duì)最外層的 window對(duì)象使用。

①這里所謂的“頁(yè)面視圖容器”指的是Opera中單個(gè)標(biāo)簽頁(yè)對(duì)應(yīng)的瀏覽器窗口。

本文僅限內(nèi)部技術(shù)人員學(xué)習(xí)交流,不得作于其他商業(yè)用途.文章出自:南昌網(wǎng)站建設(shè)公司-百恒網(wǎng)絡(luò) http://www.myforexfactory.net 如轉(zhuǎn)載請(qǐng)注明出處!


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開(kāi)百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠(chéng)為您服務(wù)×

售前咨詢(xún) 售前咨詢(xún)
 
售前咨詢(xún) 售前咨詢(xún)
 
售前咨詢(xún) 售前咨詢(xún)
 
售前咨詢(xún) 售前咨詢(xún)
 
售前咨詢(xún) 售前咨詢(xún)
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專(zhuān)線 備案專(zhuān)線
 
×
城市| 池州市| 饶阳县| 南康市| 江北区| 东源县| 新乡市| 鄂伦春自治旗| 健康| 汕头市| 新昌县| 巴彦淖尔市| 前郭尔| 额尔古纳市| 吴旗县| 上犹县| 桂阳县| 许昌市| 高青县| 永定县| 广饶县| 玉田县| 如东县| 遂昌县| 宕昌县| 固原市| 吴川市| 承德市| 莲花县| 彭州市| 奉新县| 东乌| 石首市| 琼海市| 革吉县| 泸西县| 电白县| 宽甸| 霍山县| 平安县| 博野县|