91网首页-91网页版-91网在线观看-91网站免费观看-91网站永久视频-91网站在线播放

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

js基礎:js獲取頁面元素位置函數

admin
2010年8月18日 10:42 本文熱度 4155
 用Javascript獲取指定頁面元素的位置是一個非常常見的需求,本文介紹的函數能夠準確返回一個元素相對于整個文檔左上角的坐標,即元素的 top 、left 的位置,而且能夠兼容瀏覽器,相信對新手非常有用。


function getElementPos(elementId) {
 var ua = navigator.userAgent.toLowerCase();
 var isOpera = (ua.indexOf('opera') != -1);
 var isIE = (ua.indexOf('msie') != -1 && !isOpera); // not opera spoof
 var el = document.getElementById(elementId);
 if(el.parentNode === null || el.style.display == 'none') {
  return false;
 }     
 var parent = null;
 var pos = [];    
 var box;    
 if(el.getBoundingClientRect)    //IE
 {        
  box = el.getBoundingClientRect();
  var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
  var scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
  return {x:box.left + scrollLeft, y:box.top + scrollTop};
 }else if(document.getBoxObjectFor)    // gecko   
 {
  box = document.getBoxObjectFor(el);
  var borderLeft = (el.style.borderLeftWidth)?parseInt(el.style.borderLeftWidth):0;
  var borderTop = (el.style.borderTopWidth)?parseInt(el.style.borderTopWidth):0;
  pos = [box.x - borderLeft, box.y - borderTop];
 } else    // safari & opera   
 {
  pos = [el.offsetLeft, el.offsetTop]; 
  parent = el.offsetParent;    
  if (parent != el) {
   while (parent) { 
    pos[0] += parent.offsetLeft;
    pos[1] += parent.offsetTop;
    parent = parent.offsetParent;
   } 
  }  
  if (ua.indexOf('opera') != -1 || ( ua.indexOf('safari') != -1 && el.style.position == 'absolute' )) {
   pos[0] -= document.body.offsetLeft;
   pos[1] -= document.body.offsetTop;        
  }   
 }             
 if (el.parentNode) {
    parent = el.parentNode;
   } else {
    parent = null;
   }
 while (parent && parent.tagName != 'BODY' && parent.tagName != 'HTML') { // account for any scrolled ancestors
  pos[0] -= parent.scrollLeft;
  pos[1] -= parent.scrollTop;
  if (parent.parentNode) {
   parent = parent.parentNode;
  } else {
   parent = null;
  }
 }
 return {x:pos[0], y:pos[1]};
}

使用示例

 

var pos=getElementPos("divId");
alert("距左邊距離"+ pos.x +",距上邊距離"+pos.y);

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

主站蜘蛛池模板: 午夜看片在线观 | 国产自产视 | 九一在线观看 | 天美传媒精品 | 女王女同| 国产精品二 | 国产综合色产在线视 | 不卡免费国产 | 国产手机在线播放 | 国产精品。| 欧美综合视频 | 国产xxx| 欧美日韩精品系 | 日韩国产欧美在线 | 片完整片视频在线 | 日本特黄特大视频 | 国产偷国产偷 | 91社影院在线观看 | 1024手机| 国产一区二区视频 | 韩国欧美一区二区 | 成人永久免| 人妖系列精品视频 | 精品日产一区二 | 国产凸凹视频一 | 成人精品国产亚洲 | 国产精品夜夜春夜夜 | 日本电影在线观看黄 | 欧美日韩在线第一 | 九九色综| 成人高清 | 午夜成人精品网站 | 国子监来了个女弟子 | 国产乡下妇女三片 | 国产老妇真 | 日韩精品福 | 欧美午夜小视频 | 国产性夜夜春夜夜爽 | 欧美日韩午夜福利 | 日本一二区不卡 | 日韩国产亚 |