开发案例-通过JS实现一个可拖拽的弹窗卡片
一个简单的可拖拽的弹窗样式HTML通过给可拖拽区域绑定mousedownstartDragvue的事件来实现元素的拖动功能。CSS通过background: linear-gradient(180deg, color 0%, color 100%)实现背景渐变色宽度通过width: fit-content实现自适应宽同时设置min-width和max-width确保比例不会太离谱。JS通过使用startDrag、onDrag、stopDrag等事件来控制拖动行为。源码divv-ifshowCardrefcardclasscard_infodivclasscard_headermousedownstartDrag/divdivclassclose_infoclickshowCard false×/divspan≡nbsp;nbsp;标题/spanp字段一nbsp;nbsp;{{ metarilInfo.mapCode }}/pp字段二nbsp;nbsp;{{ metarilInfo.areaCode }}/pp字段三nbsp;nbsp;{{ metarilInfo.mapDataCode }}/pp字段四nbsp;nbsp;{{ metarilInfo.coox }}, {{ metarilInfo.cooy }}/pp字段五nbsp;nbsp;{{ metarilInfo.shelfCode }}/pp字段六nbsp;nbsp;{{ metarilInfo.mapDataEmptyDate || / }}/p/divscriptlangtssetupimport{ref}fromvue;constshowCardref(false);//何时显示的代码自己定义constcardrefany(null);constisDraggingref(false);letstartX0;letstartY0;conststartDrag(event){//开始拖拽事件if(!card.value)returnisDragging.valuetrue;startXevent.clientX-card.value.offsetLeft;startYevent.clientY-card.value.offsetTop;document.addEventListener(mousemove,onDrag);document.addEventListener(mouseup,stopDrag);document.addEventListener(mouseleave,stopDrag);};constonDrag(event){//拖拽中事件if(!isDragging.value)returnevent.preventDefault();//阻止浏览器默认行为card.value.style.left${event.clientX-startX}px;card.value.style.top${event.clientY-startY}px;};conststopDrag(){//停止拖拽时销毁监听器isDragging.valuefalse;document.removeEventListener(mousemove,onDrag);document.removeEventListener(mouseup,stopDrag);document.removeEventListener(mouseleave,stopDrag);};/scriptstylelangscssscoped.card_info{position:absolute;top:20%;left:50%;transform:translateX(-50%);min-width:12vw;max-width:fit-content;pointer-events:all;background:linear-gradient(180deg,#236784f1 0%,#236784d2 20%,#2367848a 100%);padding:0.1vw 0.5vw 0.5vw 0.5vw;border:1px solid #44dbee;border-radius:0.25vw;::before{content:;position:absolute;top:0.7vw;left:0;height:1vw;width:0.2vw;background-color:#44dbee;}.card_header{position:absolute;top:0.3vw;left:0.3vw;height:1.5vw;width:90%;cursor:grab;//可拖拽样式z-index:1;:active{cursor:grabbing;//鼠标点击后变为拖拽中样式}}.close_info{font-size:2vh;width:1vw;height:1vw;color:#fff;display:flex;justify-content:center;align-items:center;position:absolute;top:0.1vw;right:0.1vw;:hover{cursor:pointer;background-color:red;}}span{font-size:1vw;font-weight:600;height:1.9vw;line-height:1.9vw;padding:0 1vw 0 0;z-index:2;}p{font-size:0.7vw;height:1.4vw;line-height:1.4vw;background-color:#00000050;margin-top:0.1vw;padding:0 0.3vw;white-space:nowrap;}}/style效果图

相关新闻

超越一切理性:当一款免费RTS用20年时光对抗商业游戏法则

超越一切理性:当一款免费RTS用20年时光对抗商业游戏法则

👋 Hi,我专注 (AI 大模型应用落地、意识解码与 AI 开发工具链)。代表专栏:《AI大模型应知应会短平快系列100篇》《解码意识NCTransformer》《WeClaw Agent实战》> 💡 创业路上,用技术换时间,…

2026/8/9 19:57:09 阅读更多 →
AH股溢价监测系统实战:用Python构建跨市场套利预警

AH股溢价监测系统实战:用Python构建跨市场套利预警

AH 股溢价监测系统实战:用 Python 构建跨市场套利预警 做跨市场量化这几年,AH 股溢价数据一直是观察 A 股估值的重要参考。但实际数据拉下来后才发现,普通行情软件显示的"恒生 AH 股溢价指数"严重失真——145 只 AH 股的实际溢价水…

2026/8/9 19:57:09 阅读更多 →
1567次大宗交易折溢价信号建模:基于本地数据的Python全流程

1567次大宗交易折溢价信号建模:基于本地数据的Python全流程

1567 次大宗交易折溢价信号建模:基于本地数据的 Python 全流程 做量化这几年,大宗交易数据一直被忽视。但大宗交易的"折溢价 锁定期"组合,是判断"机构真实意图"的关键指标。本文基于本地数据引擎,写了个大宗…

2026/8/9 19:57:09 阅读更多 →

最新新闻

动态规划解LeetCode摆动序列问题与优化

动态规划解LeetCode摆动序列问题与优化

1. 问题背景与理解第一次看到LeetCode 376题"摆动序列"这个标题时,我脑海中浮现的是一条波浪形的曲线。这道题在动态规划分类中属于中等难度,但实际解题时需要跳出常规思维模式。题目要求我们找出数组中最长的摆动子序列长度,所谓摆…

2026/8/9 20:52:42 阅读更多 →
NEORV32 RISC-V处理器终极指南:构建可定制微控制器的完整解析

NEORV32 RISC-V处理器终极指南:构建可定制微控制器的完整解析

NEORV32 RISC-V处理器终极指南:构建可定制微控制器的完整解析 【免费下载链接】neorv32 🖥️ A small, customizable and extensible MCU-class 32-bit RISC-V soft-core CPU and microcontroller-like SoC written in platform-independent VHDL. 项目…

2026/8/9 20:52:42 阅读更多 →
StabilityMatrix终极指南:一站式管理20+主流AI绘画工具

StabilityMatrix终极指南:一站式管理20+主流AI绘画工具

StabilityMatrix终极指南:一站式管理20主流AI绘画工具 【免费下载链接】StabilityMatrix Multi-Platform Package Manager for Stable Diffusion 项目地址: https://gitcode.com/gh_mirrors/st/StabilityMatrix StabilityMatrix是一款革命性的跨平台AI绘画工…

2026/8/9 20:52:42 阅读更多 →
Viggle AI本地部署指南:从零实现角色驱动动画生成

Viggle AI本地部署指南:从零实现角色驱动动画生成

这次我们来看一个很有意思的AI视频生成项目——Viggle AI。它不是一个简单的文生视频工具,而是主打“角色驱动”的动画生成,简单说,就是能让一张静态图片“动”起来,或者让一个3D角色模型按照你的指令跳舞、做动作。最近网上很火的…

2026/8/9 20:52:42 阅读更多 →
揭秘浏览器运行Linux的突破性技术:全面解析在线模拟器实战指南

揭秘浏览器运行Linux的突破性技术:全面解析在线模拟器实战指南

揭秘浏览器运行Linux的突破性技术:全面解析在线模拟器实战指南 【免费下载链接】jor1k Online OR1K Emulator running Linux 项目地址: https://gitcode.com/gh_mirrors/jo/jor1k 在当今Web技术飞速发展的时代,你是否想象过在浏览器中直接运行完整…

2026/8/9 20:52:41 阅读更多 →
3个简单步骤:用OpenCore Legacy Patcher让老Mac焕发新生

3个简单步骤:用OpenCore Legacy Patcher让老Mac焕发新生

3个简单步骤:用OpenCore Legacy Patcher让老Mac焕发新生 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 还在为你的老款Mac无法升级最新macOS而烦…

2026/8/9 20:51:41 阅读更多 →

日新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/9 17:05:02 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/9 0:45:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/9 17:05:02 阅读更多 →