clientX, clientY | offsetX, offsetY | pageX, pageY的区别:
✍ clientX, clientY:指的是鼠标点击位置距离可视窗口的坐标;
图示:在不拉滚动条的情况下
在拉滚动条的情况下: 还是点击位置距离可视窗口左上角的距离
✍ pageX, pageY:指的是距离页面左上角的距离,就是当你拉滚动条时,距离值也不变
图示:当你没拉滚动条时,此时点击页面左上角也就是窗口的左上角,所以当你没拉滚动条,距离就是下面图的距离;但是当你拉了滚动条,页面也就上去了,此时页面左上角不等于窗口左上角,而这个pageX, pageY是距离页面左上角的距离,当你点击同一个位置,这个坐标是不变的。
✍ offsetX, offsetY:距离触发元素左上角的坐标值
图示: