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 相关文章推荐
再谈IE中Flash控件的自动激活 ObjectWrap
Mar 09 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
Sep 26 Javascript
angular.element方法汇总
Jan 07 Javascript
jQuery仿360导航页图标拖动排序效果代码分享
Aug 24 Javascript
使用递归遍历对象获得value值的实现方法
Jun 14 Javascript
vue.js入门教程之计算属性
Sep 01 Javascript
Node.js读写文件之批量替换图片的实现方法
Sep 07 Javascript
URL的参数中有加号传值变为空格的问题(URL特殊字符)
Nov 04 Javascript
javascript实现简单的可随机变色网页计算器示例
Dec 30 Javascript
canvas绘制七巧板
Feb 03 Javascript
js中获取URL参数的共用方法getRequest()方法实例详解
Oct 24 Javascript
关于ligerui子页面关闭后,父页面刷新,重新加载的方法
Sep 27 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
CPU步进是什么意思?i3-9100F B0步进和U0步进区别知识科普
2020/03/17 数码科技
基于mysql的论坛(3)
2006/10/09 PHP
php中设置多级目录session的问题
2011/08/08 PHP
PHP中iconv函数转码时截断字符问题的解决方法
2015/01/21 PHP
php模板引擎技术简单实现
2016/03/15 PHP
php实现mysql连接池效果实现代码
2018/01/25 PHP
JS中字符问题(二进制/十进制/十六进制及ASCII码之间的转换)
2008/11/03 Javascript
JQuery操作Select的Options的Bug(IE8兼容性视图模式)
2013/04/21 Javascript
在ASP.NET中使用JavaScript脚本的方法
2013/11/12 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
深入探讨javascript中的数据类型
2015/03/04 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
react-native ListView下拉刷新上拉加载实现代码
2017/08/03 Javascript
Node.js的Koa实现JWT用户认证方法
2018/05/05 Javascript
vue2.0 实现导航守卫(路由守卫)
2018/05/21 Javascript
Nodejs把接收图片base64格式保存为文件存储到服务器上
2018/09/26 NodeJs
详解Vue.js iview实现树形权限表(可扩展表)
2018/09/30 Javascript
jquery图片预览插件实现方法详解
2019/07/18 jQuery
Vue  webpack 项目自动打包压缩成zip文件的方法
2019/07/24 Javascript
Vue使用Clipboard.JS在h5页面中复制内容实例详解
2019/09/03 Javascript
Layer组件多个iframe弹出层打开与关闭及参数传递的方法
2019/09/25 Javascript
vuex存值与取值的实例
2019/11/06 Javascript
Python函数嵌套实例
2014/09/23 Python
python调用fortran模块
2016/04/08 Python
说说如何遍历Python列表的方法示例
2019/02/11 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
python中pip的使用和修改下载源的方法
2019/07/08 Python
python清空命令行方式
2020/01/13 Python
pycharm 中mark directory as exclude的用法详解
2020/02/14 Python
Django2.1.7 查询数据返回json格式的实现
2020/12/29 Python
印尼网上商店:Alfacart.com
2019/03/11 全球购物
对象的序列化(serialization)类是面向流的,应如何将对象写入到随机存取文件中
2015/06/22 面试题
教师党员个人剖析材料
2014/09/29 职场文书
MySQL开启事务的方式
2021/06/26 MySQL
公历12个月名称的由来
2022/04/12 杂记
Java多线程并发FutureTask使用详解
2022/06/28 Java/Android