JavaScript简单拖拽效果(1)
发布时间 - 2026-01-11 01:08:59 点击率:次拖拽在前端开发中是很常见的功能,也是基本功之一,本文是不限制范围的拖拽也就是最简单的拖拽,鼠标按下对象,拖拽,松开停止!
1,onmousedown事件
2,onmousemove事件
3,onmouseup事件

因为在按下时拖动,所以onmousemove事件在down后才注册,up事件是用来解绑事件,消除事件!
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>简单拖拽</title>
<style type="text/css">
* {
margin: 0;
padding: 0;
}
#div1 {
width: 100px;
height: 100px;
background: orange;
position: absolute;
}
</style>
</head>
<body style="height: 500000px;">
<div id="div1"></div>
<script type="text/javascript">
function getStyle(obj, attr) {
if (obj.currentStyle) {
return obj.currentStyle[attr];
} else {
return getComputedStyle(obj, null)[attr];
}
}
var oDiv = document.getElementById('div1');
oDiv.onmousedown = function(ev) {
var oEvent = ev || event;
// var disX = oEvent.clientX - oDiv.offsetLeft;
// var disY = oEvent.clientY - oDiv.offsetTop;
var disX = oEvent.clientX - parseInt(getStyle(oDiv, 'left'));
var disY = oEvent.clientY - parseInt(getStyle(oDiv, 'top'));
document.onmousemove = function(ev) {
var oEvent = ev || event;
oDiv.style.left = oEvent.clientX - disX + 'px';
oDiv.style.top = oEvent.clientY - disY + 'px';
};
document.onmouseup = function() {
document.onmousemove = null;
document.onmouseup = null;
};
return false;
};
</script>
</body>
</html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# 拖拽
# JQuery Dialog(JS 模态窗口
# 可拖拽的DIV)
# js实现拖拽效果
# 百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8
# Firefox
# Chrome
# Javascript拖拽系列文章2之offsetLeft、offsetTop、offsetWidth
# 关于js拖拽上传 [一个拖拽上传修改头像的流程]
# javascript支持firefox
# ie7页面布局拖拽效果代码
# js完美的div拖拽实例代码
# 使用js实现的简单拖拽效果
# javascript拖拽上传类库DropzoneJS使用方法
# div拖拽插件——JQ.MoveBox.js(自制JQ插件)
# 按下
# 鼠标
# 拖动
# 后才
# 最简单
# 大家多多
# 是用来
# meta
# charset
# utf
# DOCTYPE
# html
# gt
# head
# margin
# css
# padding
# style
# title
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析
如何撰写建站申请书?关键要点有哪些?
如何为不同团队 ID 动态生成多个非值班状态按钮
如何快速搭建个人网站并优化SEO?
Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】
Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】
Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
Win11怎么设置默认图片查看器_Windows11照片应用关联设置
Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】
如何为不同团队 ID 动态生成多个“认领值班”按钮
大连 网站制作,大连天途有线官网?
Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
网站制作大概多少钱一个,做一个平台网站大概多少钱?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】
如何用JavaScript实现文本编辑器_光标和选区怎么处理
音响网站制作视频教程,隆霸音响官方网站?
免费网站制作appp,免费制作app哪个平台好?
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
利用vue写todolist单页应用
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】
Windows Hello人脸识别突然无法使用
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
千库网官网入口推荐 千库网设计创意平台入口
Laravel集合Collection怎么用_Laravel集合常用函数详解
教学论文网站制作软件有哪些,写论文用什么软件
?
Android自定义listview布局实现上拉加载下拉刷新功能
如何用腾讯建站主机快速创建免费网站?
微信小程序 canvas开发实例及注意事项
如何利用DOS批处理实现定时关机操作详解
佛山企业网站制作公司有哪些,沟通100网上服务官网?
如何快速搭建虚拟主机网站?新手必看指南
大同网页,大同瑞慈医院官网?
laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
长沙企业网站制作哪家好,长沙水业集团官方网站?
如何快速启动建站代理加盟业务?
如何快速生成高效建站系统源代码?
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
Laravel如何处理CORS跨域请求?(配置示例)
Laravel如何保护应用免受CSRF攻击?(原理和示例)
如何快速建站并高效导出源代码?
MySQL查询结果复制到新表的方法(更新、插入)

