全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

完美实现js拖拽效果 return false用法详解

本文为大家分享了完美实现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小时内与您取得联系。