欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

IE和FF下javascript獲取網(wǎng)頁及窗口大小的區(qū)別

admin
2010年10月16日 16:57 本文熱度 3947
在新定義出來的標(biāo)準(zhǔn)下 document.documentelement.clientheight在ie和火狐里都能獲取正確值,下面一篇文章詳細(xì)介紹了獲取各種瀏覽器可見窗口大小這方面的差別:[br][br][br][br]在本地測試當(dāng)中:[br]在ie、firefox、opera下都可以使用[br]document.body.clientwidth[br]document.body.clientheight[br]即可獲得,很簡單,很方便。[br][br]而在公司項(xiàng)目當(dāng)中:[br]opera仍然使用[br]document.body.clientwidth[br]document.body.clientheight[br]可是ie和firefox則使用[br]document.documentelement.clientwidth[br]document.documentelement.clientheight[br][br][br]如果在頁面中添加這行標(biāo)記的話[br][br]在ie中:[br]document.body.clientwidth ==> body對(duì)象寬度[br]document.body.clientheight ==> body對(duì)象高度[br]document.documentelement.clientwidth ==> 可見區(qū)域?qū)挾萚br]document.documentelement.clientheight ==> 可見區(qū)域高度[br]在firefox中:[br]document.body.clientwidth ==> body對(duì)象寬度[br]document.body.clientheight ==> body對(duì)象高度[br]document.documentelement.clientwidth ==> 可見區(qū)域?qū)挾萚br]document.documentelement.clientheight ==> 可見區(qū)域高度[br]?[br]在opera中:[br]document.body.clientwidth ==> 可見區(qū)域?qū)挾萚br]document.body.clientheight ==> 可見區(qū)域高度[br]document.documentelement.clientwidth ==> 頁面對(duì)象寬度(即body對(duì)象寬度加上margin寬)[br]document.documentelement.clientheight ==> 頁面對(duì)象高度(即body對(duì)象高度加上margin高)[br][br][br]用 javascript 獲取當(dāng)頁面上鼠標(biāo)(光標(biāo))位置在許多情況下都會(huì)用到,比如拖放,懸停提示(tooltip)等等。當(dāng)然,這里我們依然要面對(duì)瀏覽器的兼容問題,在不同的瀏覽器下,對(duì)[br][br]這些相關(guān)的屬性處理方式也不同,本文詳細(xì)介紹了瀏覽器在處理這些屬性時(shí)的差異和最終的解決方法。[br][br][br][br]上面的代碼我們?cè)? 怎么用 javascript 實(shí)現(xiàn)拖拽中已經(jīng)介紹過了,由于這個(gè)需求我們經(jīng)常用到,所以我們將這段代碼獨(dú)立成一篇文章,供新手查詢。[br][br]使用方式:[br]code:[br]document.onmousemove = mousemove;[br]function mousemove(ev){[br] ev = ev || window.event;[br] var mousepos = mouseposition(ev);[br]}[br][br]關(guān)于代碼的詳細(xì)說明,原文中已經(jīng)介紹,現(xiàn)轉(zhuǎn)到此處:[br][br]我們首先要聲明一個(gè) evnet 對(duì)象,無論移動(dòng)、點(diǎn)擊、按鍵等,都會(huì)激活一個(gè) evnet ,在 internet explorer 里, event 是全局變量,會(huì)被存儲(chǔ)在 window.event 里. 在 firefox[br][br]或者其他瀏覽器,event 會(huì)被相應(yīng)的函數(shù)獲取.當(dāng)我們將mousemove函數(shù)賦值于document.onmousemove,mousemove 會(huì)獲取鼠標(biāo)移動(dòng)事件。[br][br]為了讓 ev 在所有瀏覽器下獲取了 event 事件,在firefox下"||window.event"將不起作用,因?yàn)閑v已經(jīng)有了賦值。在 msie 中 ev 為空,所以得到 window.event 。[br][br]因?yàn)樵谶@篇文章中我們需要多次獲取鼠標(biāo)位置,所以我們?cè)O(shè)計(jì)了一個(gè) mouseposition 函數(shù),它包含一個(gè)參數(shù) : event 。[br][br]因?yàn)槲覀円?msie 和其他瀏覽器下運(yùn)行,firefox 和其他瀏覽器用 event.pagex 和 event.pagey 來表示鼠標(biāo)相對(duì)于文檔的位置,如果你有一個(gè) 500*500 的窗口并且你的鼠標(biāo)在絕對(duì)[br][br]中間,那么 pagex 和 pagey 的值都是 250,如果你向下滾動(dòng) 500, 那么 pagey 將變成 750。[br][br]msie 正好相反,它使用 event.clientx 和 event.clienty 表示鼠標(biāo)相當(dāng)于窗口的位置,而不是文檔。在同樣的例子中,如果你向下滾動(dòng) 500,clienty 依然是 250,因此,我們需要[br][br]添加 scrollleft 和 scrolltop 這兩個(gè)相對(duì)于文檔的屬性。最后,msie 中文檔并不是從 0,0 開始,而是通常有一個(gè)小的邊框(通常是 2 象素),邊框的大小定義在 [br][br]document.body.clientleft 和 clienttop 中,我們也把這些加進(jìn)去。[br][br]很幸運(yùn),我們現(xiàn)在已經(jīng)用 mouseposition 函數(shù)解決了坐標(biāo)問題,不需為此費(fèi)心了。[br]tag標(biāo)簽: ie,ff,javascript,clientwidth,clientheight

該文章在 2010/10/16 16:57:24 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲(chǔ)管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved