javascript实现随机生成DIV背景色


Posted in Javascript onJune 20, 2016

随机色有两种格式:
效果预览:http://wjf444128852.github.io/DEMOLIST/JS/test/index.html
 1、rgb(xxx,xxx,xxx)
 2、#xxxxxx
 下面实现两种随机的方法
 思路:如何让x都是随机的,
 1、中的xxx是0-255之间的随机整数,用Math.random()*255取得0-255之间的随机数,
 再Math.floor()保留小数点前面的
 2、中的x是0123456789abxdef中的随机6个的组合,
 这里可以用数组或者字符串处理,这里采用数组,只要从数组里取6次,每次取得数组下标是0-16之间的随机整数即可。
 注意(法二中虽然改变的是#XXXX,此时浏览器查看DOM元素的background-color属性值还是rgb格式的,但是JS中赋值是#xxx格式。)
 代码如下:
 HTML

<body>
  <div class="main">
    <p><a href="javascript:;" id="btn-one">RandomColor-rgb</a></p>
    <ul>
      <li><div class="bg_color"></div></li>
      <li><div class="bg_color"></div></li>
      <li><div class="bg_color"></div></li>
      <li><div class="bg_color"></div></li>
    </ul>
  </div>
  <div class="main">
    <p><a href="javascript:;" id="btn-two">RandomColor-#XXXXXX</a></p>
    <ul>
      <li><div class="bg_two"></div></li>
      <li><div class="bg_two"></div></li>
      <li><div class="bg_two"></div></li>
      <li><div class="bg_two"></div></li>
    </ul>
  </div>
</body>

CSS 

*{
      box-sizing: border-box;
      list-style: none;
      border: none;
      padding: 0;
      margin: 0;
    }
    p{
      text-align: center;
      margin: 20px;
    }
    p a{
      font-size: 20px;
      font-weight: 300;
      color: #e4393c;
      text-decoration: none;
      padding: 6px 10px;
      border: 1px solid currentColor;
    }
    .bg_color,.bg_two{
      width: 100px;
      height: 100px;
      border: 1px solid #aa00aa;
    }
    .main,.main ul{
      overflow: hidden;
    }
    .main{
      width: 400px;
      margin:30px auto;
    }
    .main ul li{
      float: left;
    }

JS

<script>
  (function(){
    //1、随机色的函数-rgb
    function getRandomColor(){
      var rgb='rgb('+Math.floor(Math.random()*255)+','   

      +Math.floor(Math.random()*255)+','  

      +Math.floor(Math.random()*255)+')';
      console.log(rgb);
      return rgb;
    }
//  获取按钮
    var btn_one=document.querySelector("#btn-one");
    var Divs=document.querySelectorAll(".bg_color");
    btn_one.onclick=function(){
      for(var i=0;i<Divs.length;i++){
        Divs[i].style.backgroundColor=getRandomColor();
      }
    };
    //2、随机颜色#XXXXXX
    var btn_two=document.querySelector("#btn-two");
    var divsTwo=document.querySelectorAll(".bg_two");
    var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'];
    function generateMixed(n) {
      var res = "#";
      var id;
      for(var i = 0; i < n ; i ++) {
        id= Math.floor(Math.random()*16);
        res += chars[id];
      }
      console.log(id,res);
      return res;
    }
    btn_two.onclick=function(){
      for(var i=0;i<divsTwo.length;i++){
        divsTwo[i].style.backgroundColor=generateMixed(6);
      }
    };
  })()
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript multibox 全选
Mar 22 Javascript
javascript 解析后的xml对象的读取方法细解
Jul 25 Javascript
JavaScript 设计模式学习 Singleton
Jul 27 Javascript
node.js应用后台守护进程管理器Forever安装和使用实例
Jun 01 Javascript
jQuery中after()方法用法实例
Dec 25 Javascript
JavaScript闭包实例详解
Jun 03 Javascript
浅谈如何实现easyui的datebox格式化
Jun 12 Javascript
JS调用某段SQL语句的方法
Oct 20 Javascript
最好用的Bootstrap fileinput.js文件上传组件
Dec 12 Javascript
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 Javascript
vue实现输入框自动跳转功能
May 20 Javascript
通过实例了解JS执行上下文运行原理
Jun 17 Javascript
使用jQuery Rotare实现微信大转盘抽奖功能
Jun 20 #Javascript
JS实现弹出居中的模式窗口示例
Jun 20 #Javascript
jQuery筛选数组之grep、each、inArray、map的用法及遍历json对象
Jun 20 #Javascript
解决jQuery ajax请求在IE6中莫名中断的问题
Jun 20 #Javascript
indexedDB bootstrap angularjs之 MVC DOMO (应用示例)
Jun 20 #Javascript
JS控制层作圆周运动的方法
Jun 20 #Javascript
简单实现jQuery进度条轮播实例代码
Jun 20 #Javascript
You might like
php 常用类汇总 推荐收藏
2010/05/13 PHP
tp5(thinkPHP5)操作mongoDB数据库的方法
2018/01/20 PHP
docker-compose部署php项目实例详解
2019/07/30 PHP
jquery中获得$.ajax()事件返回的值并添加事件的方法
2010/04/15 Javascript
灵活应用js调试技巧解决样式问题的步骤分享
2012/03/15 Javascript
javascript学习笔记(六) Date 日期类型
2012/06/19 Javascript
node.js中的fs.read方法使用说明
2014/12/17 Javascript
js+css实现导航效果实例
2015/02/10 Javascript
js获取滚动距离的方法
2015/05/30 Javascript
详细分析使用AngularJS编程中提交表单的方式
2015/06/19 Javascript
javascript中html字符串转化为jquery dom对象的方法
2015/08/27 Javascript
js实现精确到秒的日期选择器完整实例
2016/04/30 Javascript
Dropzone.js实现文件拖拽上传功能(附源码下载)
2016/11/22 Javascript
Bootstrap模态框(Modal)实现过渡效果
2017/03/17 Javascript
JavaScript之浏览器对象_动力节点Java学院整理
2017/07/03 Javascript
深入分析element ScrollBar滚动组件源码
2019/01/22 Javascript
element-ui中Table表格省市区合并单元格的方法实现
2019/08/07 Javascript
Javascript和jquery在selenium的使用过程
2019/10/31 jQuery
微信小程序自定义tabbar custom-tab-bar 6s出不来解决方案(cover-view不兼容)
2019/11/01 Javascript
python mysqldb连接数据库
2009/03/16 Python
pyQt4实现俄罗斯方块游戏
2018/06/26 Python
python中map的基本用法示例
2018/09/10 Python
对Python中Iterator和Iterable的区别详解
2018/10/18 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
OpenCV python sklearn随机超参数搜索的实现
2020/01/17 Python
Python threading模块condition原理及运行流程详解
2020/10/05 Python
html5教程制作简单画板代码分享
2013/12/04 HTML / CSS
linux下进程间通信的方式
2013/01/23 面试题
Shell脚本如何向终端输出信息
2014/04/25 面试题
食品安全工作方案
2014/05/07 职场文书
人事主管岗位职责说明书
2014/07/30 职场文书
今日说法观后感
2015/06/08 职场文书
运动会宣传稿100字
2015/07/23 职场文书
Python基础之操作MySQL数据库
2021/05/06 Python
浅谈JavaScript浅拷贝和深拷贝
2021/11/07 Javascript
美元符号 $
2022/02/17 杂记