纯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 相关文章推荐
js 获取坐标 通过JS得到当前焦点(鼠标)的坐标属性
Jan 04 Javascript
Js中的onblur和onfocus事件应用介绍
Aug 27 Javascript
js的隐含参数(arguments,callee,caller)使用方法
Jan 28 Javascript
网页从弹窗页面单选框传值至父页面代码分享
Sep 29 Javascript
mui上拉加载功能实例详解
Apr 13 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
Sep 02 Javascript
Vue cli构建及项目打包以及出现的问题解决
Aug 27 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
Sep 18 Javascript
Node.js console控制台简单用法分析
Jan 04 Javascript
vue elementUI 表单校验功能之数组多层嵌套
Jun 04 Javascript
vue 百度地图(vue-baidu-map)绘制方向箭头折线实例代码详解
Apr 28 Javascript
JS绘图Flot如何实现可选显示曲线图功能
Oct 16 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
什么是短波收听SWL
2021/03/01 无线电
今天你说520了吗?不仅有php表白书还有java表白神器
2016/05/20 PHP
让元素在网页中可拖动示例代码
2013/08/13 Javascript
js验证输入是否为手机号码或电话号码示例
2013/12/30 Javascript
js获取页面description的方法
2015/05/21 Javascript
用jquery快速解决IE输入框不能输入的问题
2016/10/04 Javascript
jquery+html仿翻页相册功能
2016/12/20 Javascript
vue中component组件的props使用详解
2017/09/04 Javascript
react-native fetch的具体使用方法
2017/11/01 Javascript
微信小程序录音与播放录音功能
2017/12/25 Javascript
深入理解requireJS-实现一个简单的模块加载器
2018/01/15 Javascript
jquery在启动页面时,自动加载数据的实例
2018/01/22 jQuery
vue注册组件的几种方式总结
2018/03/08 Javascript
详解vue-cli中模拟数据的两种方法
2018/07/03 Javascript
详解微信小程序中组件通讯
2018/10/30 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
基于jQuery实现挂号平台首页源码
2020/01/06 jQuery
JS出现404错误原理及解决方案
2020/07/01 Javascript
JS倒计时两种实现方式代码实例
2020/07/27 Javascript
vue打包npm run build时候界面报错的解决
2020/08/13 Javascript
[01:12]DOTA2次级职业联赛 - Newbee.Y 战队宣传片
2014/12/01 DOTA
Python类和对象的定义与实际应用案例分析
2018/12/27 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
Python实现迪杰斯特拉算法过程解析
2020/09/18 Python
世界上最大的餐具公司:Oneida
2016/12/17 全球购物
英国森林假期:Forest Holidays
2021/01/01 全球购物
数字漫画:comiXology
2020/06/13 全球购物
电气自动化大学生求职信
2013/10/16 职场文书
预备党员的自我评价
2014/03/12 职场文书
询价采购方案
2014/06/09 职场文书
数学教育专业求职信
2014/07/22 职场文书
学校领导四风问题整改措施思想汇报
2014/10/09 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
2015年师德师风自我评价范文
2015/03/05 职场文书
思想道德自我评价2015
2015/03/09 职场文书
死者家属慰问信
2015/03/24 职场文书