一直以来,都不知道如何准备的得到这个距离(元素到页面左部和顶部的距离) ,使用e.offsetLeft得到的都是距离父元素的距离。 今天看到这这知一个函数。OK,拿出来分享。 function getAbsPoint (e){ //再封装个函数吧。传进来的e可以是字符串类型(即id),也可以是htmlElement对象。觉得getEL是个累赘的话,就把它删除掉。 e = getEL(e); var x = e.offsetLeft; var y = e.offsetTop; while(e = e.offsetParent){ x += e.offsetLeft; y += e.offsetTop; } return {"x": x, "y": y}; } //使用getEL,不用$,避免冲突。 function getEL(id) { if (typeif =="undefined") { return null; } if (typeof id =="string") { return document.getElementById(id); } return id; }