纯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 相关文章推荐
浅谈javascript的数据类型检测
Jul 10 Javascript
当jQuery遭遇CoffeeScript的时候 使用分享
Sep 17 Javascript
cookie 最近浏览记录(中文escape转码)具体实现
Jun 08 Javascript
推荐10 款 SVG 动画的 JavaScript 库
Mar 24 Javascript
jQuery的选择器中的通配符[id^='code']或[name^='code']及jquery选择器总结
Dec 24 Javascript
Angular2 父子组件数据通信实例
Jun 22 Javascript
vue项目常用组件和框架结构介绍
Dec 24 Javascript
Three.js 再探 - 写一个微信跳一跳极简版游戏
Jan 04 Javascript
微信小程序progress组件使用详解
Jan 31 Javascript
vue删除html内容的标签样式实例
Sep 13 Javascript
react-router4按需加载(踩坑填坑)
Jan 06 Javascript
vue中watch和computed为什么能监听到数据的改变以及不同之处
Dec 27 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
PHP 应用程序的安全 -- 不能违反的四条安全规则
2006/11/26 PHP
php中文字母数字验证码实现代码
2008/04/25 PHP
php GD绘制24小时柱状图
2008/06/28 PHP
PHP垃圾回收机制简单说明
2010/07/22 PHP
php导出excel格式数据问题
2014/03/11 PHP
php实现上传图片保存到数据库的方法
2015/02/11 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
PHP+Oracle本地开发环境搭建方法详解
2019/04/01 PHP
Extjs学习笔记之九 数据模型(上)
2010/01/11 Javascript
基于jquery的不规则矩形的排列实现代码
2012/04/16 Javascript
js multiple全选与取消全选实现代码
2012/12/04 Javascript
js 使FORM表单的所有元素不可编辑的示例代码
2013/10/17 Javascript
jQuery简单几行代码实现tab切换
2015/03/10 Javascript
JavaScript将字符串转换成字符编码列表的方法
2015/03/19 Javascript
AngularJS中的API(接口)简单实现
2016/07/28 Javascript
JavaScript的for循环中嵌套一个点击事件的问题解决
2017/03/03 Javascript
nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
2017/07/05 NodeJs
判断jQuery是否加载完成,没完成继续判断的解决方法
2017/12/06 jQuery
Vue中的methods、watch、computed的区别
2018/11/26 Javascript
Vue组件间通信 Vuex的用法解析
2019/08/05 Javascript
python3序列化与反序列化用法实例
2015/05/26 Python
VScode编写第一个Python程序HelloWorld步骤
2018/04/06 Python
对Python3+gdal 读取tiff格式数据的实例讲解
2018/12/04 Python
Python第三方库face_recognition在windows上的安装过程
2019/05/03 Python
pytorch随机采样操作SubsetRandomSampler()
2020/07/07 Python
详解css3 Transition属性(平滑过渡菜单栏案例)
2017/09/05 HTML / CSS
ECCO英国官网:丹麦鞋履品牌
2019/09/03 全球购物
应届毕业生求职自荐书
2014/01/03 职场文书
环保标语大全
2014/06/12 职场文书
八一建军节营销活动方案
2014/08/31 职场文书
毕业论文致谢怎么写
2015/05/14 职场文书
2015年路政工作总结
2015/05/22 职场文书
Python自动化测试PO模型封装过程详解
2021/06/22 Python
JS轻量级函数式编程实现XDM三
2022/06/16 Javascript