js和jq中常见的各种位置距离之offset和offset()的区别(三)

offsetLeft:元素的边框的外边缘距离与已定位的父容器(offsetparent)的左边距离(不包括元素的边框和父容器的边框)。

offset().left:返回的是相对于当前文档的坐标,使用offset()方法不管该元素如何定位,也不管其父元素如何定位,都是获取的该元素相对于当前窗口的偏移坐标

附上调试代码:

 1     <style>
 2         *{margin:0;padding:0;}
 3         #parent{ position: relative; padding: 10px; margin:30px; background-color:#CCC; border: solid 10px #fbc;}
 4         #child{ height: 200px; width: 200px; padding: 10px; margin: 30px;border: solid 10px #fbc;background-color:#afb;}
 5     </style>
 6     <body>
 7     <div id="parent"> 
 8         <div id="child">
 9         </div>
10        </div>
11        <script src="jquery_1.11.3.min.js"></script>
12        <script>
13 
14 
15            var child = $("#child").get(0);
16            console.log( "offsetLeft: " + child.offsetLeft);
17         console.log( "offset().left: " + $("#child").offset().left);
18        </script>

 注:此文为原创,如需转载请注明出处。

原文地址:https://www.cnblogs.com/wuqiutong/p/5982710.html