本文为大家分享了完美实现js拖拽效果的具体代码,告诉大家return false的用法,供大家参考,具体内容如下

1.return false可以用来阻止默认事件即系统默认事件。例如通过阻止默认事件,来对textarea中的值进行范围限制(通过限制keycode的数值),也可以自定义在页面中的右键菜单(oncontextmenu)。
2.在鼠标移动(mousemove)等事件中,是需要给事件传一个参数,保证程序的正常运行。而为了兼容取事件方法为:var oEvent=ev||event;
3.在节点中创建一个新的节点的方法为:
var oBox=document.createElement('div');
oBox.className='box';
oBox.style.left = oDiv.offsetLeft+'px';
oBox.style.top = oDiv.offsetTop+'px';
oBox.style.width = oDiv.offsetWidth+'px';
oBox.style.height = oDiv.offsetHeight+'px';
document.body.appendChild(oBox);
//注意,在创建完之后一定要将创建好的节点加入body中!!!
下列为完整代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>完美拖拽2</title>
<style>
*{
margin: 0;
padding: 0;
}
#div1{
width: 150px;
height: 150px;
background: #71C525;
position: absolute;
}
.box{
border: 2px dashed black;
position: absolute;
}
</style>
<script>
window.onload=function()
{
var oDiv = document.getElementById('div1');
var disX=null;
var disY=null;
oDiv.onmousedown=function(ev)
{
var oEvent=event||ev;
disX=oEvent.clientX-oDiv.offsetLeft;
disY=oEvent.clientY-oDiv.offsetTop;
var oBox=document.createElement('div');
oBox.className='box';
oBox.style.left = oDiv.offsetLeft+'px';
oBox.style.top = oDiv.offsetTop+'px';
oBox.style.width = oDiv.offsetWidth+'px';
oBox.style.height = oDiv.offsetHeight+'px';
document.body.appendChild(oBox);
document.onmousemove=function(ev)
{
var oEvent=event||ev;
var l=oEvent.clientX-disX;
var t=oEvent.clientY-disY;
if (l<0) {
l=0;
} else if (l>document.documentElement.clientWidth-oDiv.offsetWidth) {
l=document.documentElement.clientWidth-oDiv.offsetWidth;
}
if (t<0) {
t=0;
} else if (t>document.documentElement.clientHeight-oDiv.offsetHeight) {
t=document.documentElement.clientHeight-oDiv.offsetHeight;
}
oBox.style.left = l+'px';
oBox.style.top=t+'px';
};
document.onmouseup=function()
{
document.onmousedown=null;
document.onmousemove=null;
oDiv.style.left = oBox.offsetLeft+'px';
oDiv.style.top = oBox.offsetTop+'px';
document.body.removeChild(oBox);
};
return false;//阻止默认事件(系统默认事件)!
};
};
</script>
</head>
<body>
<div id="div1"></div>
</body>
</html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# 拖拽
# 原生js拖拽实现图形伸缩效果
# 简单实现js拖拽效果
# js实现本地图片文件拖拽效果
# JS实现简单拖拽效果
# 原生JS实现圆环拖拽效果
# js实现登录框鼠标拖拽效果
# js实现百度登录框鼠标拖拽效果
# 如何实现js拖拽效果及原理解析
# 鼠标
# 自定义
# 大家分享
# 创建一个
# 具体内容
# 正常运行
# 大家多多
# 可以用来
# 右键菜单
# 事件中
# document
# createElement
# brush
# oBox
# pre
# documentElement
# class
# offsetLeft
# oDiv
相关文章:
音乐网站服务器如何优化API响应速度?
如何在Golang中使用replace替换模块_指定本地或远程路径
如何在七牛云存储上搭建网站并设置自定义域名?
岳西云建站教程与模板下载_一站式快速建站系统操作指南
建站上市公司网站建设方案与SEO优化服务定制指南
建站之星如何保障用户数据免受黑客入侵?
宁波自助建站系统如何快速打造专业企业网站?
如何快速搭建FTP站点实现文件共享?
制作网站外包平台,自动化接单网站有哪些?
c# 在高并发下使用反射发射(Reflection.Emit)的性能
如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
北京企业网站设计制作公司,北京铁路集团官方网站?
重庆市网站制作公司,重庆招聘网站哪个好?
威客平台建站流程解析:高效搭建教程与设计优化方案
建站VPS能否同时实现高效与安全翻墙?
如何获取开源自助建站系统免费下载链接?
创业网站制作流程,创业网站可靠吗?
网站制作知乎推荐,想做自己的网站用什么工具比较好?
如何高效配置香港服务器实现快速建站?
如何正确选择百度移动适配建站域名?
5种Android数据存储方式汇总
学校建站服务器如何选型才能满足性能需求?
建站之星如何快速更换网站模板?
如何配置IIS站点权限与局域网访问?
如何高效利用亚马逊云主机搭建企业网站?
清除minerd进程的简单方法
如何选择可靠的免备案建站服务器?
山东网站制作公司有哪些,山东大源集团官网?
如何快速查询域名建站关键信息?
家具网站制作软件,家具厂怎么跑业务?
如何在阿里云部署织梦网站?
,sp开头的版面叫什么?
建站之星好吗?新手能否轻松上手建站?
如何用IIS7快速搭建并优化网站站点?
网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?
专业网站建设制作报价,网页设计制作要考什么证?
高端建站三要素:定制模板、企业官网与响应式设计优化
武清网站制作公司,天津武清个人营业执照注销查询系统网站?
如何通过多用户协作模板快速搭建高效企业网站?
,如何利用word制作宣传手册?
如何快速搭建自助建站会员专属系统?
建站之星后台密码遗忘或太弱?如何重置与强化?
Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解
如何使用Golang安装API文档生成工具_快速生成接口文档
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
网站好制作吗知乎,网站开发好学吗?有什么技巧?
如何续费美橙建站之星域名及服务?
如何选择高效响应式自助建站源码系统?
深圳网站制作培训,深圳哪些招聘网站比较好?
*请认真填写需求信息,我们会在24小时内与您取得联系。