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

主站蜘蛛池模板: 日本免费精品 | 国产免费资源 | 国产综合激情精品 | 国产丰满老熟 | 国产精品视频一区二 | 人人摸人人 | 国产v综合v | 国产午夜一级一片 | 国产日韩z| 日韩xxx免费视频 | 岛国大片在线 | 国产成视频在线观看 | 无码精品国产一区二区三区免费 | 福利一区在线观看 | 国产又大又 | 日本一二 | 国产午夜视频 | 区一区二区三 | 国产精品人人 | 国产在线小视频 | 日韩欧美乱国产日 | 国内激情视频 | 国产欧美国日产综合 | 日韩成人免费 | 国产羞羞影院在 | 日本成人兔费网站 | 精品国内自产 | 精品影院 | 中文字幕乱码 | 成人午夜天 | 日本理伦年轻的妻子 | 三区免费观看 | 日本色道亚洲精品 | 日韩种子 | 美日韩在线观看 | 日韩+欧 | 日本不卡网站 | 91福利资源 | 国产精品永 | 国产精品秘果冻 | 欧洲无毛性XXXX |