pc端鼠标拖拽元素,鼠标移动太快,导致元素跟不上的问题

342 篇文章 9 订阅

可以把移动的监听事件 放到 window对象上 监听整个窗口事件 就可以了  

然后将window对象中鼠标的移动位置 坐标赋值给 指定元素 就可以了

当然绑定在 document 上也可以

<div class="drag"></div>
    <script>
        var tuo = function(e) {
            var x = e.clientX;
            var y = e.clientY;
            $('.drag').css({
                left: (x - $('.drag').width() / 2) + 'px',
                top: (y - $('.drag').height() / 2) + 'px'
            })
        }

        $('.drag').on('mousedown', function(e) {
            $(window).on('mousemove', tuo)
        })
        
        $('.drag').on('mouseup', function() {
            $(window).off('mousemove');
        })
    </script>

有的时候考虑问题 确实不能仅仅局限于当前元素   那样可能你看到的方案也有局限性   

关注我   持续更新前端知识   

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是PC端鼠标双击全屏的代码: ``` document.addEventListener('dblclick', function(e){ var element = e.target; toggleFullScreen(element); }); function toggleFullScreen(element) { if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement && !document.msFullscreenElement) { if (element.requestFullscreen) { element.requestFullscreen(); } else if (element.msRequestFullscreen) { element.msRequestFullscreen(); } else if (element.mozRequestFullScreen) { element.mozRequestFullScreen(); } else if (element.webkitRequestFullscreen) { element.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT); } } else { if (document.exitFullscreen) { document.exitFullscreen(); } else if (document.msExitFullscreen) { document.msExitFullscreen(); } else if (document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if (document.webkitExitFullscreen) { document.webkitExitFullscreen(); } } } ``` 在此代码中,我们使用了 `document.addEventListener` 来监听双击事件。当双击事件被触发时,我们获取了鼠标所在的元素,并将其传递给 `toggleFullScreen` 函数。 在 `toggleFullScreen` 函数中,我们首先判断当前是否已经处于全屏模式,如果没有,则使用相应的 API 进入全屏模式。如果已经处于全屏模式,则使用相应的 API 退出全屏模式。 这个代码可以在任何元素上使用,只需要将需要全屏显示的元素传递给 `toggleFullScreen` 函数即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yunchong_zhao

帮到你了,请作者喝杯矿泉水可好

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值