JS实现点击按钮随机生成可拖动的不同颜色块示例


Posted in Javascript onJanuary 30, 2019

本文实例讲述了JS实现点击按钮随机生成可拖动的不同颜色块。分享给大家供大家参考,具体如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>3water.com JS点击生成随机颜色块</title>
<style type="text/css">
div{
  width: 100px;
  height: 100px;
  background-color: red;
  position: absolute;
  margin-left: 10px;
  float: left;
}
</style>
</head>
<body id="body1">
<button onclick="btn()">创建div</button>
<script>
  function btn(){
    var id;
    //动态创建元素
    var str=document.createElement("div");
    //元素的背景色随机的
    str.style.backgroundColor=getColorRandom();
    //将生成的div追加到body中
    document.getElementById("body1").appendChild(str);
    //随机生成的id设置为动态创建的div的id
    str.id="items"+parseInt(Math.random()*10000);
    // 获取动态生成的div的id
    var obj=document.getElementById(str.id);
    var disX=0;
    var disY=0;
    //鼠标点击落下事件
    obj.onmousedown=function (event){
      disX=event.clientX-obj.offsetLeft;
      disY=event.clientY-obj.offsetTop;
      //鼠标移开事件
      document.onmousemove=function(ev){
        obj.style.left=ev.clientX-disX+"px";
        obj.style.top=ev.clientY-disY+"px";
      }
      //鼠标松开事件
      document.onmouseup= function () {
        document.onmousemove=null;
        document.onmouseup=null;
      }
    }
    //生成随机颜色
    function getColorRandom(){
      var c="#";
      var cArray=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"];
      for(var i=0;i<6;i++){
       var cIndex= Math.round(Math.random()*15);
        c+=cArray[cIndex];
      }
      return c;
    }
  }
</script>
</body>
</html>

这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,可得如下运行效果:

JS实现点击按钮随机生成可拖动的不同颜色块示例

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

Javascript 相关文章推荐
利用Dojo和JSON建立无限级AJAX动态加载的功能模块树
Mar 24 Javascript
jQuery + Flex 通过拖拽方式动态改变图片的代码
Aug 03 Javascript
兼容ie、firefox的图片自动缩放的css跟js代码分享
Jan 21 Javascript
jQuery实现彩带延伸效果的网页加载条loading动画
Oct 29 Javascript
AngularJS directive返回对象属性详解
Mar 28 Javascript
javascript动画之磁性吸附效果篇
Dec 09 Javascript
jQuery开源组件BootstrapValidator使用详解
Jun 29 jQuery
Vue之Watcher源码解析(1)
Jul 19 Javascript
vue数据传递--我有特殊的实现技巧
Mar 20 Javascript
基于Vue实现可以拖拽的树形表格实例详解
Oct 18 Javascript
jQuery实现动态加载瀑布流
Sep 01 jQuery
JavaScript 绘制饼图的示例
Feb 19 Javascript
JS实现的新闻列表自动滚动效果示例
Jan 30 #Javascript
谈谈为什么你的 JavaScript 代码如此冗长
Jan 30 #Javascript
JS实现头条新闻的经典轮播图效果示例
Jan 30 #Javascript
AJAX在JQuery中的应用详解
Jan 30 #jQuery
JS实现换肤功能的方法实例详解
Jan 30 #Javascript
js实现ATM机存取款功能
Oct 27 #Javascript
详解基于electron制作一个node压缩图片的桌面应用
Jan 29 #Javascript
You might like
给海燕B411配件机起死回生配上件
2021/03/02 无线电
使PHP自定义函数返回多个值
2006/11/26 PHP
javascript 面向对象全新理练之原型继承
2009/12/03 Javascript
jquery自定义函数的多种方法
2014/01/09 Javascript
javascript运行机制之this详细介绍
2014/02/07 Javascript
jQuery 复合选择器应用的几个例子
2014/09/11 Javascript
node.js中的fs.symlinkSync方法使用说明
2014/12/15 Javascript
JS实现自动固定顶部的悬浮菜单栏效果
2015/09/16 Javascript
Javascript如何判断数据类型和数组类型
2016/06/22 Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
2016/07/08 Javascript
js实现砖头在页面拖拉效果
2020/11/20 Javascript
JS实现给json数组动态赋值的方法示例
2020/03/19 Javascript
ionic2懒加载配置详解
2017/09/01 Javascript
在vue中使用jointjs的方法
2018/03/24 Javascript
工作中常用到的ES6语法
2018/09/04 Javascript
详解新手使用vue-router传参时注意事项
2019/06/06 Javascript
解决layui的form里的元素进行动态生成,验证失效的问题
2019/09/14 Javascript
vue项目配置使用flow类型检查的步骤
2020/03/18 Javascript
Nuxt.js 静态资源和打包的操作
2020/11/06 Javascript
node脚手架搭建服务器实现token验证的方法
2021/01/20 Javascript
[32:30]夜魇凡尔赛茶话会 第一期01:谁是卧底
2021/03/11 DOTA
详解appium+python 启动一个app步骤
2017/12/20 Python
Python matplotlib修改默认字体的操作
2020/03/05 Python
Jupyter加载文件的实现方法
2020/04/14 Python
django-orm F对象的使用 按照两个字段的和,乘积排序实例
2020/05/18 Python
DNA测试:Orig3n
2019/03/01 全球购物
英国历史最悠久的DJ设备供应商:DJ Finance、DJ Warehouse、The DJ Shop
2019/09/04 全球购物
下面这个程序执行后会有什么错误或者效果
2014/11/03 面试题
"引用"与多态的关系
2013/02/01 面试题
个人综合鉴定材料
2014/05/23 职场文书
机械专业求职信
2014/05/25 职场文书
2014年禁毒工作总结
2014/11/24 职场文书
读《工匠精神》有感:热爱工作,精益求精
2019/12/28 职场文书
python 模拟在天空中放风筝的示例代码
2021/04/21 Python
CSS Transition通过改变Height实现展开收起元素
2021/08/07 HTML / CSS
JPA 通过Specification如何实现复杂查询
2021/11/23 Java/Android