var mydivTop = document.getElementById("mydiv").style.top;我想获取名为mydiv的top的值,但这种写法不对,捕获一个div的当前坐标,

解决方案 »

  1.   

    用这个试下
    var mydivTop = document.getElementById("mydiv").style.offsetTop; 
    象你那样用如果没有指定top或是从css里边继承了top是得不到的
      

  2.   

    function getAbsolutePosition_Size(node) {
            if (!(node = document.getElementById(node))) return false;
            var offsetTop = node.offsetTop;
            var offsetLeft = node.offsetLeft;
            var offsetWidth = node.offsetWidth;
            var offsetHeight = node.offsetHeight;
            while (node = node.offsetParent) {
                offsetTop += node.offsetTop;
                offsetLeft += node.offsetLeft;
            }
            return { left: offsetLeft, top: offsetTop, width: offsetWidth, height: offsetHeight }
        }使用 var a=new getAbsolutePosition_size('divID');
    a.left 
    a.top
    a.width
    a.height  得到你需要的值
      

  3.   

    只在ie下运行可以把event参数去了
    <div id="unChosed">
    <ul>
    <li onclick="clickitem(event)">- A </li>
    <li onclick="clickitem(event)">- B </li>
    <li onclick="clickitem(event)">- C </li>
    </ul>
    </div>
    <script>
    function clickitem(e){
       var evt=e||window.event;
       var srcEl=evt.target||evt.srcElement;
       var oParNode=srcEl.parentNode;
       var aLis=oParNode.getElementsByTagName("li");
       var i,nLen=aLis.length,nIndex=-1;   for(i=0;i<nLen;i++){
           if(aLis[i]==srcEl){          
               nIndex=i;
               break;
           }
       }   
       alert(nIndex);
    }
    </script>
      

  4.   

    var mydivTop = document.getElementById("mydiv").style.pixelTop; 
    用这个试试