javascript如何设置DIV背景色为随机色

随机色有两种格式:

效果预览: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>
时间: 2024-10-05 02:06:11

javascript如何设置DIV背景色为随机色的相关文章

CSS设置DIV背景色渐变显示

<style type="text/css"> .linear{ width:100%; height:600px; FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#b8c4cb,endColorStr=#f6f6f8); /*IE 6 7 8*/ background: -ms-linear-gradient(top, #fff,  #0000ff);    

CSS设置DIV背景色渐变

div{ width: 200px; height: 200px; FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0, startColorStr=#AC07BD, endColorStr=#f6f6f8); /*IE 6 7 8*/ background: -ms-linear-gradient(top, #AC07BD, #f6f6f8); /* IE 10 */ background:-moz-linear-

CSS设置DIV背景色渐变显示--针对不同浏览器,背景渐变的兼容问问题

针对不同浏览器,背景渐变的兼容问问题! background: -ms-linear-gradient(top, #fff,  #0000ff);        /* IE 10 */ background:-moz-linear-gradient(top,#b8c4cb,#f6f6f8);/*火狐*/ background:-webkit-gradient(linear, 0% 0%, 0% 100%,from(#b8c4cb), to(#f6f6f8));/*谷歌*/ background:

div 背景色设置_DIV背景颜色设置

DIV 背景色设置篇-div背景颜色设置篇 一.div标签内直接设置背景颜色   -   TOP <div style="background:#000; color:#FFF">背景为黑色</div> DIV标签内设置背景色为黑色,字体颜色为白色 div标签内设置背景色截图 通过div标签内设置style设置背景色等CSS样式. 二.外部css设置div背景色   -   TOP 这里为一个对象CSS命名为".divcss5",通过建立外部

javascript如何动态设置div的样式

javascript如何动态设置div的样式:有时候需要根据需要动态设置div的样式,当然对于稍有经验的javascript开发者来说,这一切都是那么的简单,但是对于初学者或者说没有相关经验的开发者来说可能就是一个不大不小的难关,下面就通过实例简单介绍一下如何实现此效果.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="aut

JavaScript动态实现div窗口弹出&amp;消失功能

先积累一个JavaScript动态实现div窗口弹出&消失功能 首先是index.jsp代码 <html> <head> <link rel="stylesheet" href="css/DivStyle.css" media="screen"> <script type="text/javascript" src="scripts/div.js">&

随机色&原生DOM筛选元素

function colorRandom1(){ var r = Math.floor(Math.random()*51+200); var g = Math.floor(Math.random()*51+200); var b = Math.floor(Math.random()*51+200); return 'rgb('+r+','+g+','+b+')'; } var div = document.body.getElementsByTagName('div')[0]; div.styl

js如何设置div的背景图片

js如何设置div的背景图片:通过js设置div背景图片的方式有多种,这里只介绍一下使用style方式设置,尽管这种方式大家最为熟悉,但是设置背景因为涉及到路径,可能会稍稍造成一点困难,直接给出代码: odiv.style.backgroundImage="url('images/test.jpg')"; 当然也可以使用setAttribute()函数实现,具体可以参阅setAttribute()函数的用法详解一章节. 原文地址是:http://www.softwhy.com/foru

JavaScript学习之DIV层与图像

DIV层与图像 一.设计一个可定位的层 1.设置位置(position)和大小 (1)绝对定位(absolute):以页面边框为参照,只要设置好绝对位置,那么元素的位置会始终固定在距离边框某个位置的距离. 绝对定位有两个属性:left和top,分别是距离网页左边和网页顶部的绝对位置,可借助style属性直接设置: style="position:absolute;left:距离左边距离;top:距离顶部距离" (2)相对定位(relative):需要有一个参照元素,设置好相对位置和参照