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

js實(shí)現(xiàn)jquery的offset()方法實(shí)例

 更新時(shí)間:2015年01月10日 10:14:53   投稿:shichen2014  
這篇文章主要介紹了js實(shí)現(xiàn)jquery的offset()方法,實(shí)例分析了jquery的offset()方法原理與采用javascript實(shí)現(xiàn)的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了js實(shí)現(xiàn)jquery的offset()方法。分享給大家供大家參考。具體分析如下:

用過(guò)jQuery的offset()的同學(xué)都知道offset().top或offset().left很方便地取得元素相對(duì)于整個(gè)頁(yè)面的偏移。

而在js里,沒(méi)有這樣直接的方法,節(jié)點(diǎn)的屬性offsetTop可以獲得該節(jié)點(diǎn)相對(duì)于父節(jié)點(diǎn)的相對(duì)偏移,但不能直接獲得其絕對(duì)偏移,我們可用節(jié)點(diǎn)逐層遞歸向上來(lái)相加offsetTop來(lái)獲得絕對(duì)偏移。

復(fù)制代碼 代碼如下:
function getOffset(Node, offset) {
    if (!offset) {
        offset = {};
        offset.top = 0;
        offset.left = 0;
    }

    if (Node == document.body) {//當(dāng)該節(jié)點(diǎn)為body節(jié)點(diǎn)時(shí),結(jié)束遞歸
        return offset;
    }

    offset.top += Node.offsetTop;
    offset.left += Node.offsetLeft;

    return getOffset(Node.parentNode, offset);//向上累加offset里的值
}


 

使用時(shí),則如:

復(fù)制代碼 代碼如下:
var a = document.getElementById('a');
//getOffset(a).top
//getOffset(a).left

希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

砚山县| 方城县| 兰溪市| 始兴县| 怀宁县| 北京市| 黎川县| 镇安县| 南昌市| 乌拉特后旗| 渭南市| 高淳县| 阿鲁科尔沁旗| 瓮安县| 乌兰浩特市| 安吉县| 镶黄旗| 麦盖提县| 崇文区| 万荣县| 客服| 富宁县| 三明市| 绥棱县| 深州市| 驻马店市| 木里| 鹰潭市| 涿州市| 黑龙江省| 板桥市| 定西市| 芷江| 铁力市| 平遥县| 庆云县| 长葛市| 临朐县| 延长县| 南溪县| 邹城市|