WEB开发网
开发学院网页设计JavaScript prototype使用学习手册指南之Position.js 阅读

prototype使用学习手册指南之Position.js

 2010-09-14 13:11:45 来源:WEB开发网   
核心提示: //元素在页面中由offsetParent累积的offset,当offsetParent都没有滚动条时,prototype使用学习手册指南之Position.js(2),就是元素在页面中的位置cumulativeOffset: function(element) {var valueT =

//元素在页面中由offsetParent累积的offset,当offsetParent都没有滚动条时,就是元素在页面中的位置

cumulativeOffset: function(element) {
  var valueT = 0, valueL = 0;
  do {
   valueT += element.offsetTop || 0;
   valueL += element.offsetLeft || 0;
   element = element.offsetParent;
  } while (element);
  return [valueL, valueT];
 },

//元素相对于containing block("nearest positioned ancestor")的位置,也就是相对于最近的一个position设置为relative或者absolute的祖先节点的位置,如果没有就是相对于 body的位置,跟style.top,style.left一样?

positionedOffset: function(element) {
  var valueT = 0, valueL = 0;
  do {
   valueT += element.offsetTop || 0;
   valueL += element.offsetLeft || 0;
   element = element.offsetParent;
   if (element) {
    if(element.tagName==’BODY’) break;
    var p = Element.getStyle(element, 'position’);
    if (p == 'relative’ || p == 'absolute’) break;
   }
  } while (element);
  return [valueL, valueT];
 },
 
 //offsetParent
 offsetParent: function(element) {
  if (element.offsetParent) return element.offsetParent;
  if (element == document.body) return element;
  while ((element = element.parentNode) && element != document.body)
   if (Element.getStyle(element, 'position’) != ’static’)
    return element;
  return document.body;
 },
 
 // caches x/y coordinate pair to use with overlap

上一页  1 2 3 4 5 6  下一页

Tags:prototype 使用 学习

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接