这个时候,如果 body 的高度/宽度变化了,可以滚动滑轮了会怎样呢?
body {
height: 5000px;
}
这时候,如果鼠标不动,只滚动滑轮的话,会发现图片会距离鼠标原点越来越远。为什么呢?
因为当我们滚动滑轮的时候,鼠标距离页面顶部的距离改变了,但是 clientY 是可视区域的大小,滚动滑轮的时候, clientY 的大小是没有变的,但是鼠标距离页面顶部的距离改变了,而图片在 Y 轴的距离计算还是按照 clientY 计算的,所以图片就会距离鼠标越来越远。
那么,怎么办呢?
事件参数 e 有连个属性:pageX,pageY 是距离页面顶部边界的距离,可以直接使用,但是不幸的是,IE8 又不支持。看来,只能是鼠标移动的距离 + 滑轮卷曲出去的距离来实现了。
思路:
之前我们封装的兼容代码都在一个函数里面,这里我们封装到一个对象 evt 里面。
这个 evt 对象封装了所有浏览器都支持的关于 clientX,clientY 等页面坐标的函数。
图片跟着鼠标移动的最终版:
2、案例:淘宝宝贝放大镜
kkkkkk温馨提示:由于厂商可能在未提前通知的情况下更改产品包装、产地、赠品或随机附件等。
飞虎回复仅在回复当时对提问者有效,其他网友仅供参考!若由此给您带来不便敬请谅解,谢谢!
温馨提示:由于厂商可能在未提前通知的情况下更改产品包装、产地、赠品或随机附件等。
飞虎回复仅在回复当时对提问者有效,其他网友仅供参考!若由此给您带来不便敬请谅解,谢谢!
温馨提示:由于厂商可能在未提前通知的情况下更改产品包装、产地、赠品或随机附件等。
飞虎回复仅在回复当时对提问者有效,其他网友仅供参考!若由此给您带来不便敬请谅解,谢谢!
温馨提示:由于厂商可能在未提前通知的情况下更改产品包装、产地、赠品或随机附件等。
飞虎回复仅在回复当时对提问者有效,其他网友仅供参考!若由此给您带来不便敬请谅解,谢谢!
温馨提示:由于厂商可能在未提前通知的情况下更改产品包装、产地、赠品或随机附件等。
飞虎回复仅在回复当时对提问者有效,其他网友仅供参考!若由此给您带来不便敬请谅解,谢谢!
温馨提示:由于厂商可能在未提前通知的情况下更改产品包装、产地、赠品或随机附件等。
飞虎回复仅在回复当时对提问者有效,其他网友仅供参考!若由此给您带来不便敬请谅解,谢谢!
温馨提示:由于厂商可能在未提前通知的情况下更改产品包装、产地、赠品或随机附件等。
飞虎回复仅在回复当时对提问者有效,其他网友仅供参考!若由此给您带来不便敬请谅解,谢谢!
温馨提示:由于厂商可能在未提前通知的情况下更改产品包装、产地、赠品或随机附件等。
飞虎回复仅在回复当时对提问者有效,其他网友仅供参考!若由此给您带来不便敬请谅解,谢谢!Daotin
