纯js实现的积木(div层)拖动功能示例


Posted in Javascript onJuly 19, 2017

本文实例讲述了纯js实现的积木(div层)拖动功能。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>拖动</title>
  <style type="text/css">
  </style>
</head>
<body id="content">
<input type="button" value="获取积木" id="div3"/>
</body>
<script>
  //生成积木
  document.getElementById("div3").onclick=function(){
    var num = getnumber();
    var num1 = getnumber();
    var num2 = getnumber();
    var num3 = getnumber();
    var divs = '<div id="s'+num+'"style="width: 200px;height: 200px;position: absolute;background:rgb('+num1+','+num2+','+num3+')"></div>'
    document.getElementById("content").insertAdjacentHTML("beforeEnd",divs);
    darg1("s"+num+"");
  };
  //h获取随机数,获取随机颜色
  function getnumber(){
    return parseInt(Math.random()*255);
  }
  //拖动积木
  function darg1(id){
    var obj = document.getElementById(id);
    var objx = 0;
    var objy = 0;
    obj.onmousedown = function(even){
      //鼠标到div的距离
      objx = even.clientX - obj.offsetLeft;
      objy = even.clientY - obj.offsetTop;
      //div移动的距离 = 鼠标到父窗口的距离 - 鼠标到div的距离
      document.onmousemove = function(even){
        obj.style.left = even.pageX-objx+'px';
        obj.style.top = even.pageY-objy+'px';
      };
      document.onmouseup = function(){
        document.onmousemove = null;
        document.onmouseup = null;
      };
    };
    return false;
  }
</script>
<html>

点击button按钮,获取积木,获取积木后可以在浏览器内随意拖动生成的积木:

纯js实现的积木(div层)拖动功能示例

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
Textarea根据内容自适应高度
Oct 28 Javascript
Javascript基础教程之数据类型 (字符串 String)
Jan 18 Javascript
JS实现的简洁二级导航菜单雏形效果
Oct 13 Javascript
AngularJS 整理一些优化的小技巧
Aug 18 Javascript
easyUI下拉列表点击事件使用方法
May 18 Javascript
JavaScript编程设计模式之观察者模式(Observer Pattern)实例详解
Oct 25 Javascript
JS实现的全选、全不选及反选功能【案例】
Feb 19 Javascript
JS将时间秒转换成天小时分钟秒的字符串
Jul 10 Javascript
详解Vue.js和layui日期控件冲突问题解决办法
Jul 25 Javascript
使用vscode快速建立vue模板过程详解
Oct 10 Javascript
js回调函数仿360开机
Dec 26 Javascript
你知道JavaScript Symbol类型怎么用吗
Jan 08 Javascript
vue loadmore组件上拉加载更多功能示例代码
Jul 19 #Javascript
vue引入swiper插件的使用实例
Jul 19 #Javascript
vue loadmore 组件滑动加载更多源码解析
Jul 19 #Javascript
JS实现的走迷宫小游戏完整实例
Jul 19 #Javascript
JS设置随机出现2个数字的实例代码
Jul 19 #Javascript
利用jQuery异步上传文件的插件用法详解
Jul 19 #jQuery
JavaScript 值类型和引用类型的初次研究(推荐)
Jul 19 #Javascript
You might like
造就帕卡马拉的帕卡斯是怎么被发现的
2021/03/03 咖啡文化
zen cart新进商品的随机排序修改方法
2010/09/10 PHP
一个经典的PHP验证码类分享
2014/11/18 PHP
用PHP代码在网页上生成图片
2015/07/01 PHP
php计划任务之验证是否有多个进程调用同一个job的方法
2015/12/07 PHP
PHP实现的支付宝支付功能示例
2019/03/26 PHP
php的优点总结 php有哪些优点
2019/07/19 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
2019/10/11 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
2020/02/10 PHP
Javascript优化技巧(文件瘦身篇)
2008/01/28 Javascript
传智播客学习之java 反射
2009/11/22 Javascript
JQuery 1.6发布 性能提升,同时包含大量破坏性变更
2011/05/10 Javascript
映彩衣的js随笔(js图片切换效果)
2011/07/31 Javascript
jquery 合并内容相同的单元格(示例代码)
2013/12/13 Javascript
JavaScript 学习笔记之变量及其作用域
2015/01/14 Javascript
jQuery简单几行代码实现tab切换
2015/03/10 Javascript
Vue键盘事件用法总结
2017/04/18 Javascript
javascript使用正则实现去掉字符串前面的所有0
2018/07/23 Javascript
详解使用Nuxt.js快速搭建服务端渲染(SSR)应用
2019/03/13 Javascript
vue父子组件通信的高级用法示例
2019/08/29 Javascript
详解node和ES6的模块导出与导入
2020/02/19 Javascript
Vue3不支持Filters过滤器的问题
2020/09/24 Javascript
微信小程序实现滚动Tab选项卡
2020/11/16 Javascript
[37:45]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第二场 12.09
2020/12/11 DOTA
python 实现堆排序算法代码
2012/06/05 Python
Python基础教程之正则表达式基本语法以及re模块
2016/03/25 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
2020/03/27 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
HTML5 input新增type属性color颜色拾取器的实例代码
2018/08/27 HTML / CSS
会话Bean的种类
2013/11/07 面试题
环境建设实施方案
2014/03/14 职场文书
常务副县长“三严三实”对照检查材料思想汇报
2014/10/05 职场文书
党员干部三严三实心得体会
2014/10/13 职场文书
小学教研工作总结2015
2015/05/13 职场文书
保护地球的宣传语
2015/07/13 职场文书
通讯稿格式及范文
2015/07/22 职场文书