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 相关文章推荐
JS 创建对象(常见的几种方法)
Nov 03 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(三)情景对话中仿打字机输出文字
Jan 23 Javascript
判断输入是否为空,获得输入类型的JS代码
Oct 30 Javascript
Javascript表单验证要注意的事项
Sep 29 Javascript
JavaScript中number转换成string介绍
Dec 31 Javascript
基于jquery实现下拉框美化特效
Feb 02 Javascript
Bootstrap模仿起筷首页效果
May 09 Javascript
BootStrap 附加导航组件
Jul 22 Javascript
bootstrap table实现单击单元格可编辑功能
Mar 28 Javascript
JS+WCF实现进度条实时监测数据加载量的方法详解
Dec 19 Javascript
快速搭建Node.js(Express)用户注册、登录以及授权的方法
May 09 Javascript
vue tab切换,解决echartst图表宽度只有100px的问题
Jul 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
php颜色转换函数hex-rgb(将十六进制格式转成十进制格式)
2013/09/23 PHP
Ubuntu中搭建Nginx、PHP环境最简单的方法
2015/03/05 PHP
thinkPHP中create方法与令牌验证实例浅析
2015/12/08 PHP
PHP基于GD库的图像处理方法小结
2016/09/27 PHP
PHP实现的下载远程文件类定义与用法示例
2017/07/05 PHP
JAVASCRIPT HashTable
2007/01/22 Javascript
javascript向flash swf文件传递参数值注意细节
2012/12/11 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
jQuery设置指定网页元素宽度和高度的方法
2015/03/25 Javascript
jQuery使用after()方法在元素后面添加多项内容的方法
2015/03/26 Javascript
Javascript 事件冒泡机制详细介绍
2016/10/10 Javascript
Bootstrap弹出框modal上层的输入框不能获得焦点问题的解决方法
2016/12/13 Javascript
详解通过JSON数据使用VUE.JS
2017/05/26 Javascript
JavaScript之排序函数_动力节点Java学院整理
2017/06/30 Javascript
详解如何实现一个简单的Node.js脚手架
2017/12/04 Javascript
Angular2学习笔记之数据绑定的示例代码
2018/01/03 Javascript
3种vue路由传参的基本模式
2018/02/22 Javascript
React 项目迁移 Webpack Babel7的实现
2018/09/12 Javascript
vue+element-ui+axios实现图片上传
2019/08/20 Javascript
layui table复选框禁止某几条勾选的实例
2019/09/20 Javascript
jQuery 隐藏/显示效果函数用法实例分析
2020/05/20 jQuery
Python常用列表数据结构小结
2014/08/06 Python
Python XML RPC服务器端和客户端实例
2014/11/22 Python
python2与python3中关于对NaN类型数据的判断和转换方法
2018/10/30 Python
Python 函数用法简单示例【定义、参数、返回值、函数嵌套】
2019/09/20 Python
简单了解python filter、map、reduce的区别
2020/01/14 Python
Python利用imshow制作自定义渐变填充柱状图(colorbar)
2020/12/10 Python
雅高酒店中国:Accorhotels.com China
2018/03/26 全球购物
酒店总经理助理职责
2014/02/12 职场文书
网络技术专业推荐信
2014/02/20 职场文书
绿化工程实施方案
2014/03/17 职场文书
银行爱岗敬业演讲稿
2014/05/05 职场文书
2015年银行员工工作总结
2015/04/24 职场文书
消费者投诉书范文
2015/07/02 职场文书
mysql事务对效率的影响分析总结
2021/10/24 MySQL
mysql数据插入覆盖和时间戳的问题及解决
2022/03/25 MySQL