在前端開發(fā)中,經(jīng)常會用到j(luò)Query框架來操作DOM元素。有時候需要獲取元素距離窗口的坐標(biāo),jQuery封裝了一個方法可以輕松實現(xiàn)這個功能。
//獲取元素距離窗口的坐標(biāo) var offset = $('#element').offset(); console.log(offset);
其中,'#element'是要獲取坐標(biāo)的元素選擇器,offset()方法返回一個包含top和left屬性的對象。
但是需要注意的是,這個方法獲取的是相對于document文檔的坐標(biāo),不是相對于可視窗口的坐標(biāo),因此要加上窗口滾動條滾動的距離才是真正的相對于窗口的坐標(biāo)。
//獲取元素相對于窗口的坐標(biāo) var target = $('#element'); var offset = target.offset(); var scrollLeft = $(window).scrollLeft(); var scrollTop = $(window).scrollTop(); var x = offset.left - scrollLeft; var y = offset.top - scrollTop; console.log("x坐標(biāo):" + x + ",y坐標(biāo):" + y);
上面的代碼中,先獲取元素相對于文檔的坐標(biāo),然后再獲取窗口的滾動距離,最后將坐標(biāo)減去滾動距離得到相對于窗口的坐標(biāo)。
以上就是jQuery獲取元素距離窗口的坐標(biāo)的方法,可以方便地實現(xiàn)元素位置的判斷和操作,提高了前端開發(fā)的效率。