< meta charset = "utf-8" /> < title > </ title > < script src = "https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js" type = "text/javascript" charset = "utf-8" > </ script > </ head > < div id = "pic" style = "width:10000px;height:300px;font-size:100px;" > getY和getX同样道理,这两个差值就是鼠标相对于对象的定位,因为拖拽后鼠标和拖拽对象的相对位置是不变的 </ div > < script type = "text/javascript" > var drag= function (obj) { obj.bind( "mousedown" ,start); function start (event) { if (event.button== 0 ){ //判断是否点击鼠标左键 gapX=event.clientX; startx = $(window).scrollLeft(); // scroll的初始位置 //movemove事件必须绑定到$(document)上,鼠标移动是在整个屏幕上的 $(document).bind( "mousemove" ,move); //此处的$(document)可以改为obj $(document).bind( "mouseup" ,stop); return false ; //阻止默认事件或冒泡 function move (event) { var left = event.clientX-gapX; // 鼠标移动的相对距离 $(window).scrollLeft(startx - left ); return false ; //阻止默认事件或冒泡 function stop () { //解绑定,这一步很必要,前面有解释 $(document).unbind( "mousemove" ,move); $(document).unbind( "mouseup" ,stop); obj=$( "#pic" ); drag(obj); //传入的必须是jQuery对象,否则不能调用jQuery的自定义函数 </ script > </ body > </ html > 效果 &amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html&amp;gt; &amp;lt;head&amp;gt; &amp;lt;meta charset=&quot;utf-8&quot; /&amp;gt; &amp;lt;title&amp;gt;&amp;lt;/title&amp;gt; &amp;lt;script src=&quot;https://cdn.bootcss.co
我们都知道,pc端的 横向 滚动 条只能点击 滚动 条进行左右拖动,不能像移动端那样,直接在空白区域就可以左右拖动。 在我的项目中,因为需求是将整个网站的 滚动 条全部隐藏了,所以就不能点击 滚动 条来拖动。 效果图1: 效果图2: 效果图1代码: <!DOCTYPE html > < html lang="en"> <meta charset="UTF-8"> <meta name="viewport" content=..
然后,在事件处理函数 `handleMouseWheel` 中,你可以获取到 鼠标 滚轮事件对象 `event`,并 使用 `event.deltaX` 属性来获取滚轮的 滚动 距离。 最后,你可以 使用 这个 滚动 距离来更新你的组件的状态,例如,对 横向 滚动 位置进行偏移。 <template> < div v-on:mousewheel="handleMouseWheel" style="overflow-x: scroll;"> <!-- 组件内容 --> </ div > </template> <script> export default { data() { return { scrollX: 0 methods: { handleMouseWheel(event) { this.scrollX += event.deltaX </script> 这样,当用户在 横向 滚动 时,就可以通过 鼠标 滚轮来控制组件的 滚动 位置了。