老师可以不可以详细解释下offsetleft还有就是,这个算法,没有听懂

来源:7-5 自定义audio-js(2)

慕斯卡8226687

2019-12-06 21:29:46

http://img.mukewang.com/climg/5dea57a809a77a8604280118.jpg

写回答

1回答

好帮手慕慕子

2019-12-07

同学你好, 对于你的问题解答如下:

  1. offsetLeft计算当前元素距离有定位属性(static除外)的先辈元素的距离,如果所有的先辈元素都没有设置定位属性,那么计算的就是当前元素距离窗口左侧的距离。

    示例:

    http://img.mukewang.com/climg/5deb10d409065ff508470796.jpg

    打印结果:给grand设置了相对定位,那么,此时打印son.offsetLeft就是距离先辈元素的距离

    http://img.mukewang.com/climg/5deb10e809ebb90d01260026.jpg

    如果都不设置定位

    http://img.mukewang.com/climg/5deb10fa09b848d403950552.jpg

    打印结果:  先辈元素没有定位属性,那么offset计算的就是距离窗口左侧的距离

    http://img.mukewang.com/climg/5deb110a098e777200940027.jpg

  2. e.clientX是点击位置到视口左侧边界的距离,this.offsetLeft是进度条左侧距离外层盒子的距离。我们需要的点击位置到进度条左侧的距离,所以还需要减去外层盒子到视口左侧的距离。可以参考下图理解:

    http://img.mukewang.com/climg/5deb116c098c7a6b06210274.jpg

如果帮助到了你,欢迎采纳,祝学习愉快~

1

0 学习 · 6815 问题

查看课程