js生成随机颜色(两种方式)

需求:随机生成颜色,六进制格式 /  rgb格式

<ul>
        <li id="btn1" style="width:100px">111</li>
        <li id="btn2" style="width:100px">222</li>
        <li id="btn3" style="width:100px">333</li>
        <li id="btn4" style="width:100px">444</li>
        <li id="btn5" style="width:100px">555</li>
    </ul>

 原生js:

var btn1=document.getElementById('btn1').style.background=bg3();
var btn2=document.getElementById('btn2').style.background=bg3();
var btn3=document.getElementById('btn3').style.background=bg3();
var btn4=document.getElementById('btn4').style.background=bg3();
var btn5=document.getElementById('btn5').style.background=bg3();
         
function bg3(){
  let a = '#'+Math.floor(Math.random()*0xffffff).toString(16);
   console.log(a)
  if(a == '#fff'){
      a = '#'+Math.floor(Math.random()*0xffffff).toString(16);
  }
  return a;



// var r = Math.floor(Math.random() * 254); //随机生成256以内r值
// var g = Math.floor(Math.random() * 254); //随机生成256以内g值
// var b = Math.floor(Math.random() * 254); //随机生成256以内b值
// return `rgb(${r},${g},${b})`; //返回rgb(r,g,b)格式颜色 ,所有方法的拼接都可以用ES6新特性`其他字符串{$变量名}`替换
}

这两种方法都有一个弊端:当背景图的颜色和字体颜色一致的时候,字是看不清楚的;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值