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 相关文章推荐
基于JQuery的浮动DIV显示提示信息并自动隐藏
Feb 11 Javascript
jquery教程ajax请求json数据示例
Jan 13 Javascript
jQuery实现可用于博客的动态滑动菜单完整实例
Sep 17 Javascript
JS 日期与时间戮相互转化的简单实例
Jun 22 Javascript
vue之数据交互实例代码
Jun 20 Javascript
浅谈JavaScript中的属性:如何遍历属性
Sep 14 Javascript
js注册时输入合法性验证方法
Oct 21 Javascript
jQuery实现页码跳转式动态数据分页
Dec 31 jQuery
TypeScript基础入门教程之三重斜线指令详解
Oct 22 Javascript
react quill中图片上传由默认转成base64改成上传到服务器的方法
Oct 30 Javascript
javascript单张多张图无缝滚动实例代码
May 10 Javascript
如何通过Proxy实现JSBridge模块化封装
Oct 22 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 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
2009/01/30 PHP
php5.3 废弃函数小结
2010/05/16 PHP
114啦源码(114la)不能生成地方房产和地方报刊问题4级页面0字节的解决方法
2012/01/12 PHP
php array_walk_recursive 使用自定的函数处理数组中的每一个元素
2016/11/16 PHP
jquery 学习之一 对象访问
2010/11/23 Javascript
基于jQuery实现模拟页面加载进度条
2013/04/01 Javascript
Javascript获取当前日期的农历日期代码
2014/10/08 Javascript
怎么限制input的text里输入的值只能是数字(正则、js)
2016/05/16 Javascript
jQuery Ajax全解析
2017/02/13 Javascript
AngularJS自定义指令实现面包屑功能完整实例
2017/05/17 Javascript
jquery Form轻松实现文件上传
2017/05/24 jQuery
web前端vue之vuex单独一文件使用方式实例详解
2018/01/11 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
其实你可以少写点if else与switch(推荐)
2019/01/10 Javascript
Vue源码学习之关于对Array的数据侦听实现
2019/04/23 Javascript
React如何实现浏览器打印部分内容详析
2019/05/19 Javascript
小程序如何在不同设备上自适应生成海报的实现方法
2019/08/20 Javascript
mui js控制开关状态、修改switch开关的值方法
2019/09/03 Javascript
解决layui富文本编辑器图片上传无法回显的问题
2019/09/18 Javascript
js实现点赞效果
2020/03/16 Javascript
[01:03:41]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第三场 2月2日
2021/03/11 DOTA
跟老齐学Python之重回函数
2014/10/10 Python
Python装饰器使用实例:验证参数合法性
2015/06/24 Python
通过PHP与Python代码对比的语法差异详解
2019/07/10 Python
python动态视频下载器的实现方法
2019/09/16 Python
如何在django中添加日志功能
2020/02/06 Python
pyautogui自动化控制鼠标和键盘操作的步骤
2020/04/01 Python
英国最大的手表网站:The Watch Hut
2017/03/31 全球购物
大学生收银员求职信分享
2014/01/02 职场文书
入党积极分子自我鉴定
2014/02/18 职场文书
亲子读书活动方案
2014/02/22 职场文书
学生评语大全
2014/04/18 职场文书
单位委托书怎么写
2014/08/02 职场文书
党员带头倡议书
2015/04/29 职场文书
2015年管理人员工作总结
2015/05/13 职场文书
SQL实现LeetCode(178.分数排行)
2021/08/04 MySQL