offset()和position()

网上百度都有的说明是

offset():获取匹配元素在当前视口的相对偏移。 

position():获取匹配元素相对父元素的偏移。

如果单纯写这两句话,这个博客毫无意义

这里我写下他俩的使用情况,希望对各位看官有所帮助

(下面两行是鄙人的搪塞解释,不喜欢长篇大论的可以跳过直接看后面例子)

offset(),根据定义,相对视口的距离,视口也就是整个文档,那么元素也就是脱离文档流的,那拿拖拽来说,如果拖拽的对象定位是fixed,则用ta

position(),获取相对父元素的偏移,也就是说元素在文档内,那拿拖拽来说,如果拖拽的对象定位不是fixed(包括static,relative,absolute),则用ta

具体例子(目前正在写的一个项目 详情请猛戳https://github.com/mfx55/drawingBoard

这个颜色选择器拖拽时候就用offset()来获取拖拽后的位置

部分代码截图

这个透明度选择器,是相对于透明度那个框定位的,所以这里用position()

部分代码截图

总结:

offset():获取定位为fixed的元素的位置

position():获取定位为static,absolute,relative的元素的位置

原文地址:https://www.cnblogs.com/chenluomenggongzi/p/6656793.html