鼠标拖拽移动DIV
25-04-07 04:39
884
0
<template> <div> <div @mousedown="mousedown">tips</div> <div> <span>这里是内容</span> </div> </div> </template> <script> export default { data() { return {}; }, methods: { mousedown(e) { // 被移动的主体 mainDiv const mainDiv = document.querySelector(".vvhan-com"); // 鼠标点击位置与主体边的距离 const distanceX = e.clientX - mainDiv.offsetLeft; const distanceY = e.clientY - mainDiv.offsetTop; // 鼠标移动事件 document.onmousemove = function (ev) { const _e = ev || e; //移动时,鼠标距离当前窗口x轴坐标 - 鼠标在拖拽元素的坐标 = 剩下距离body的x轴坐标 //将这个数值设置为拖拽元素的left、top let boxLeft = _e.clientX - distanceX; let boxTop = _e.clientY - distanceY; //获取body的页面可视宽高 const clientHeight = document.documentElement.clientHeight || document.body.clientHeight; const clientWidth = document.documentElement.clientWidth || document.body.clientWidth; //限制拖拽宽高 boxLeft = boxLeft < 0 ? 0 : boxLeft > clientWidth - mainDiv.offsetWidth ? clientWidth - mainDiv.offsetWidth : boxLeft; boxTop = boxTop < 0 ? 0 : boxTop > clientHeight - mainDiv.offsetHeight ? clientHeight - mainDiv.offsetHeight : boxTop; mainDiv.style.top = boxTop + "px"; mainDiv.style.left = boxLeft + "px"; }; // 鼠标松开事件 结束拖拽 document.onmouseup = function () { document.onmousemove = null; document.onmouseup = null; }; }, }, }; </script> <style> body { position: relative !important; background: url("https://cache.4ce.cn/ipfs/QmQtvCE2DMkYJKWicdaJxh3Vh47ca6t25RxBGrbre5Cy2p"); background-size: cover; padding: 0; margin: 0; } </style> <style scoped> .vvhan-com { user-select: none; position: absolute !important; box-sizing: border-box; padding: 6px; top: 36px; right: 36px; box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); background-color: rgba(255, 255, 255, 0.2); width: 340px; z-index: 9; font-size: 14px; .title { margin-bottom: 6px; font-size: 16px; line-height: 28px; border-bottom: 1px rgba(0, 0, 0, 0.1) solid; cursor: move; } h1 { color: #000; } } </style>
-
Wireshark - 网络抓包工具截取并分析各种网络数据包
Wireshark无疑是一款广受欢迎的网络封包分析软件,它能够截取并分析各种网络数据包,同时详细展示每个数据包的详细信息。这使得它成为... 768 0 25-06-16 -
医患纠纷案例解析与防范要点
医患纠纷案例解析与防范要点 由于法律的不断发展和患者维护自我权利的意识越来越强,近年来医患纠纷呈不断上升之势。医患关系紧张... 1257 0 24-06-18 -
咫尺商圈多商家小程序
"咫尺商圈多商家小程序"这个名字暗示了该应用可能具备以下特点:1. 地理位置:小程序可能利用微信的位置API,让用户可以找到附近的商家,... 1114 0 24-11-04 -
迅雷Thunder9.5补充稳定版
迅雷9稳定版是网友【myAa1】根据迅雷9进行改造的p2p下载器,因此该软件拥有原生迅雷的所有功能,同时该软件还进行了精简,可以为用户们提供... 1053 0 25-04-13 -
鸟哥的Linux私房菜 基础学习篇
一晃眼之间,私房菜的基础篇已经进入第三版了!距离第一版2002年已经间隔了7年。感觉好久了啊!为什么要有第三版呢?近年来由于信息产业的... 1100 0 24-05-24 -
NowAI - 天才助手(支持GPT-4)
NowAI是一款使用先进语言大模型技术打造而成的人工智能AI对话App,可以与你对话互动、协助创作, 也可以科学回答各领域疑问,便于高效便捷... 1277 0 24-12-11 -
PHP模拟浏览器上传文件(数据流形式上传)
用 PHP 上传文件基本都是临时存储,之后上传,怎么用 PHP 模拟浏览器以数据流形式上传文件思路及代码如下://网址 参数 文件 function ... 625 0 25-04-07 -
下厨房_菜谱软件课程解锁 去广告纯净版
下厨房App,一款卓越的美食食谱手机软件,享有“下厨房烘焙大全”和“下厨房菜谱大全”的美誉,汇聚了来自全国各地的数十万道家常菜谱... 732 0 25-06-09
发表我的评论
共0条评论
- 这篇文章还没有收到评论,赶紧来抢沙发吧~