最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js中的如何定位固定層的位置

 更新時間:2014年06月15日 16:26:18   投稿:whsnow  
這篇文章主要介紹了js中的如何定位固定層的位置,需要的朋友可以參考下
需要獲取一些HTML的對象的坐標(biāo)來更靈活的設(shè)置目標(biāo)層的坐標(biāo),這里可以通過用到document.body.scrollTop等屬性,但是這些屬性在xhtml的標(biāo)準(zhǔn)網(wǎng)頁中或更簡單的說就是帶<!DOCTYPE...>的標(biāo)簽中得到的值是0;如果不要此標(biāo)簽則一切正常,那么在xhtml中如何獲取body的坐標(biāo)呢?當(dāng)然有辦法了,我們使用document.documentElement來取代document.body例如可以這樣寫:
復(fù)制代碼 代碼如下:

var top=document.documentElement.scrollTop ||document.body.scroolTop;

js中的||是個好東西 ,不但可以用在if的條件語句中,而且還可以用在變量的賦值上,上例可以寫成如下格式:
復(fù)制代碼 代碼如下:

var top=document.documentElement.scrollTop ?document.documentElement.scrollTop : document.body.scrollTop;

這樣寫可以有很好的兼容性。還要注意的一點是:如果不聲明document.documentElement.scrollTop的值反而會顯示0。



說明要想獲取當(dāng)前頁面上滾動條坐標(biāo)的縱坐標(biāo)位置:用
document.documentElement.scrollTop而不是用
document.body.scrollTop;
document.documentElement獲取的是html標(biāo)簽,
document.body獲取的是body標(biāo)簽;
在標(biāo)準(zhǔn)w3c下,document.body.scrollTop恒為0,需要用document.documentElement.scrollTop來代替;
如果我們要定位鼠標(biāo)相對于頁面的絕度位置時,會在搜索引擎中得到的大多會讓你用
event.clientX+document.body.scrollLeft ,event.clientY+document.body.scrollTop;
如果發(fā)現(xiàn)鼠標(biāo)偏離了你的想象,一點都奇怪,因為IE5.5之后就不在支持document.body.scrollX對象了
所以我們要加上一句;
復(fù)制代碼 代碼如下:

if (document.body && document.body.scrollTop &&document.body.scrollLeft)
{
top=document.body.scrollTop;
left=document.body.scrollleft;
}
if (document.documentElement && document.documentElement.scrollTop&& document.documentElement.scrollLeft)
{
top=document.documentElement.scrollTop;
left=document.documentElement.scrollLeft;
}

下面介紹一些參數(shù)的用法:
網(wǎng)頁的可見區(qū)域?qū)挾龋篸ocument.body.clientWidth;
網(wǎng)頁的可見區(qū)域高度:document.body.clientHeight;
網(wǎng)頁可見區(qū)域?qū)?document.body.offsetWidth;(包括邊線的寬);
網(wǎng)頁可見區(qū)域高:document.body.offsetHeight;(包括邊線的寬);
網(wǎng)頁正文全文寬:document.body.scrollWidth;
網(wǎng)頁正文全文高:document.body.scrollHeight;
網(wǎng)頁被卷去的高:document.body.scrollTop;
網(wǎng)頁被卷去的左:document.body.scrollLeft;
網(wǎng)頁正文部分上:windows.screenTop;
網(wǎng)頁正文部分左:windows.screenLeft;
屏幕分辨率的高:windows.screen.height;
屏幕分辨率的寬:windows.screen.widht;
屏幕可用工作區(qū)高度:windows.screen.availHeight;
屏幕可用工作區(qū)寬度:windows.screen.availWidth;
獲取對象的滾動高度:scrollHeight;
設(shè)置或獲取位于對象左邊界和窗口中目前可見內(nèi)容的最左端之間的距離 :scrollLeft;
設(shè)置或獲取位于對象最頂端和窗口中可見內(nèi)容的最頂端之間的距離 :scrollTop;
獲取對象的滾動寬度:scrollWidth;
獲取對象相對于版面或由父坐標(biāo):offsetParent 屬性指定的父坐標(biāo)的高度 :offsetHeight;
獲取對象相對于版面或由offsetParent 屬性指定的父坐標(biāo)的計算左側(cè)位置 :offsetLeft;
獲取對象相對于版面或由offsetTop 屬性指定的父坐標(biāo)的計算頂端位置:offsetTop;
event.clientX:相對于文檔的水平坐標(biāo);
event.clientY:相對于文檔的垂直坐標(biāo);
event.offsetX:相對于容器的水平坐標(biāo);
event.offsetY:相對于容器的垂直坐標(biāo);
document.documentElement.scrollTop:設(shè)置滾動的垂直高度
event.clientX + document.documentElement.scrollTop:相對文檔的水平位置+垂直方向的滾動量;

相關(guān)文章

  • javascript開發(fā)中因空格引發(fā)的錯誤

    javascript開發(fā)中因空格引發(fā)的錯誤

    最近寫一個關(guān)于用JavaScript做圖片自動切換問題發(fā)現(xiàn)一個非常奇特的問題,除了空格和換行外完全相同的代碼,在Firefox下卻有截然不同的運行結(jié)果,今天記錄以提供他人留意及自我備查。
    2010-11-11
  • 只需五句話搞定JavaScript作用域(經(jīng)典)

    只需五句話搞定JavaScript作用域(經(jīng)典)

    javascript作用域是前端開發(fā)比較難理解的知識點,下面小編給大家提供五句話幫助大家很快的了解js作用域,非常不錯,具有參考借鑒價值,感興趣的朋友一起學(xué)習(xí)吧
    2016-07-07
  • Js base64 加密解密介紹

    Js base64 加密解密介紹

    想必大家對base64并不陌生吧,在本文將為大家介紹下Js中的base64加密解密過程,感興趣的朋友不要錯過
    2013-10-10
  • JavaScript在Android的WebView中parseInt函數(shù)轉(zhuǎn)換不正確問題解決方法

    JavaScript在Android的WebView中parseInt函數(shù)轉(zhuǎn)換不正確問題解決方法

    這篇文章主要介紹了JavaScript在Android的WebView中parseInt函數(shù)轉(zhuǎn)換不正確問題解決方法,因轉(zhuǎn)換的字符串?dāng)?shù)字都以0開頭,導(dǎo)致parseInt函數(shù)在瀏覽器和Android WebView中轉(zhuǎn)換結(jié)果不一樣,本文給出了解決方法,需要的朋友可以參考下
    2015-04-04
  • JavaScript中的宏任務(wù)和微任務(wù)執(zhí)行順序

    JavaScript中的宏任務(wù)和微任務(wù)執(zhí)行順序

    在?JavaScript?中,宏任務(wù)和微任務(wù)是指在執(zhí)行代碼的過程中的兩種不同的任務(wù)類型,這篇文章主要介紹了JavaScript中的宏任務(wù)和微任務(wù)執(zhí)行順序,需要的朋友可以參考下
    2022-12-12
  • 淺談Rx響應(yīng)式編程

    淺談Rx響應(yīng)式編程

    在學(xué)習(xí)Rx編程的過程中,理解Observable這個概念至關(guān)重要,常規(guī)學(xué)習(xí)過程中,通常需要進(jìn)行多次碰壁才能逐漸開悟。這個有點像小時候?qū)W騎自行車,必須摔幾次才能掌握一樣。當(dāng)然如果有辦法能言傳,則可以少走一些彎路,盡快領(lǐng)悟Rx的精妙
    2021-06-06
  • IntelliJ IDEA 安裝vue開發(fā)插件的方法

    IntelliJ IDEA 安裝vue開發(fā)插件的方法

    本篇文章主要介紹了IntelliJ IDEA 安裝vue開發(fā)插件的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • 原生JS實現(xiàn)ajax與ajax的跨域請求實例

    原生JS實現(xiàn)ajax與ajax的跨域請求實例

    下面小編就為大家分享一篇原生JS實現(xiàn)ajax與ajax的跨域請求實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • 微信小程序的線程架構(gòu)【推薦】

    微信小程序的線程架構(gòu)【推薦】

    這篇文章主要介紹了微信小程序的線程架構(gòu),每個小程序包含一個描述整體程序的app實例和多個描述頁面的page,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-05-05
  • js獲取css的各種樣式并且設(shè)置他們的方法

    js獲取css的各種樣式并且設(shè)置他們的方法

    下面小編就為大家?guī)硪黄猨s獲取css的各種樣式并且設(shè)置他們的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08

最新評論

平罗县| 库尔勒市| 桃江县| 克东县| 呼伦贝尔市| 射阳县| 巩义市| 留坝县| 平乡县| 晋城| 延庆县| 民丰县| 杂多县| 玛多县| 霞浦县| 叶城县| 云浮市| 延川县| 金门县| 麟游县| 青岛市| 三原县| 绍兴县| 广元市| 安远县| 张北县| 弋阳县| 东莞市| 三门县| 文登市| 葵青区| 北海市| 鸡东县| 金华市| 凤台县| 南召县| 开平市| 永川市| 富川| 于都县| 南城县|