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 批量上传图片实现代码
Jan 28 Javascript
JavaScript获取onclick、onchange等事件值的代码
Jul 22 Javascript
javascript中的取反再取反~~没有意义
Apr 06 Javascript
Boostrap入门准备之border box
May 09 Javascript
Javascript动画效果(1)
Oct 11 Javascript
微信小程序 toast 详解及实例代码
Nov 09 Javascript
Javascript 链式作用域详细介绍
Feb 23 Javascript
用最少的JS代码写出贪吃蛇游戏
Jan 12 Javascript
微信小程序模板(template)使用详解
Jan 31 Javascript
vue打包的时候自动将px转成rem的操作方法
Jun 20 Javascript
微信小程序使用map组件实现路线规划功能示例
Jan 22 Javascript
express启用https使用小记
May 21 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中html word 互转的方法
2016/01/28 PHP
ExtJs扩展之GroupPropertyGrid代码
2010/03/05 Javascript
基于jquery的仿百度搜索框效果代码
2011/04/11 Javascript
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
2012/12/11 Javascript
javascript中数组的多种定义方法和常用函数简介
2014/05/09 Javascript
input标签内容改变的触发事件介绍
2014/06/18 Javascript
jQuery使用height()获取高度需要注意的地方
2014/12/13 Javascript
JavaScript获取文本框内选中文本的方法
2015/02/20 Javascript
深入解析JavaScript中的数字对象与字符串对象
2015/10/21 Javascript
JS与jQ读取xml文件的方法
2015/12/08 Javascript
分享12个实用的jQuery代码片段
2016/03/09 Javascript
JS实现简单拖拽效果
2017/06/21 Javascript
微信小程序如何像vue一样在动态绑定类名
2018/04/17 Javascript
Vue模拟数据,实现路由进入商品详情页面的示例
2018/08/31 Javascript
详解ES6系列之私有变量的实现
2018/11/21 Javascript
了解javascript中变量及函数的提升
2019/05/27 Javascript
LayUI动态设置checkbox不显示的解决方法
2019/09/02 Javascript
详解Vue的组件中data选项为什么必须是函数
2020/08/17 Javascript
[00:48]食人魔魔法师至宝“金鹏之幸”全新模型和自定义特效展示
2019/12/19 DOTA
Python爬取网易云音乐热门评论
2017/03/31 Python
解决Python3.5+OpenCV3.2读取图像的问题
2018/12/05 Python
python3 中的字符串(单引号、双引号、三引号)以及字符串与数字的运算
2019/07/18 Python
Python 实现取多维数组第n维的前几位
2019/11/26 Python
pytorch:torch.mm()和torch.matmul()的使用
2019/12/27 Python
Pytest测试框架基本使用方法详解
2020/11/25 Python
采用专利算法搜索最廉价的机票:CheapAir
2016/09/10 全球购物
大都会艺术博物馆商店:The Met Store
2018/06/22 全球购物
Onzie官网:美国时尚瑜伽品牌
2019/08/21 全球购物
Jdbc数据访问技术面试题
2012/03/30 面试题
医学专业毕业生个人的求职信
2013/12/04 职场文书
驾驶员岗位职责
2014/01/29 职场文书
部队个人年终总结
2015/03/02 职场文书
公司副总经理岗位职责
2015/04/08 职场文书
2015年四年级班主任工作总结
2015/10/22 职场文书
《自己的花是让别人看的》教学反思
2016/02/19 职场文书
详解前端任务构建利器Gulp.js使用指南
2021/04/30 Javascript