JS怎么给5个随机字体赋5个随机不同的颜色

JS怎么给5个随机字体赋5个随机不同的颜色,第1张

实现思路是取一个随机数,颜色值保存在数组中,然后依次给标签css样式赋值

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=10">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<title>Document</title>

</head>

<body>

<p>颜色</p>

<p>颜色</p>

<p>颜色</p>

<p>颜色</p>

<p>颜色</p>

<script>

let color = [' #000000', '#FF0000', '#00FF00', '#0000FF', '#FFFF00'];

function random() {

let i = Mathfloor(Mathrandom()  (colorlength - 1));

let text = colorsplice(i, 1)[0];

return text;

}

let p = documentgetElementsByTagName('p');

for (let i = 0; i < plength; i++) {

p[i]stylecolor = random();

}

</script>

</body>

</html>

昨天在做js

从10种颜色中随机取色,并每次取出的颜色不同的时候,考虑了很多,最终用如下来实现:

复制代码

代码如下:

var

colorList

=

["#FFFF99","#B5FF91","#94DBFF","#FFBAFF","#FFBD9D","#C7A3ED","#CC9898","#8AC007","#CCC007","#FFAD5C"];

for(var

i=0;i<lineListlength;i++){

var

bgColor

=

getColorByRandom(colorList);

}

function

getColorByRandom(colorList){

var

colorIndex

=

Mathfloor(Mathrandom()colorListlength);

var

color

=

colorList[colorIndex];

colorListsplice(colorIndex,1);

return

color;

}

这样便能每次取出的颜色是随机的且都不一样

<!DOCTYPE html>

<html>

<head>

<script type="text/javascript" src="jquery-151js"></script>

<script>

//setTimeout

var colors = new Array("red","green","blue");

function changeColor(){

//var colorIndex = Mathround(Mathrandom()3);

var color_div=colors[Mathround(Mathrandom()3)];

var color_font=colors[Mathround(Mathrandom()3)];

documentgetElementById("div_c")stylebackground=color_div;

documentgetElementById("font_c")stylecolor=color_font;

//documentwirte(colorIndex);

setTimeout("changeColor()",1000);

}

</script>

</head>

<body onload="changeColor()">

<div id="div_c" align="center" style="height:1000px;width:100%">

<br/>

<br/>

<br/>

<font id="font_c" size="20px" >自动变换颜色</font>

</div>

</body>

</html>

调用的例子:

consolelog(ColorLuminance(colorRGB(),05));  //先自动生成16进制颜色,在转成比原有颜色轻50%;

//16进制随机颜色

        function colorRGB(){

            return '#' + (function (h) {

                return new Array(7 - hlength)join("0") + h

            })((Mathrandom()  0x1000000 << 0)toString(16))

        }

ColorLuminance接受两个参数

参数1: 十六进制颜色值,例如“#abc”或“#123456”(散列是可选的)

参数2: 亮度因数,即,-01是10%更暗,02是轻20%等。

function ColorLuminance(hex, lum) {

            // validate hex string

            hex = String(hex)replace(/[^0-9a-f]/gi, '');

            if (hexlength < 6) {

                hex = hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];

            }

            lum = lum || 0;

            // convert to decimal and change luminosity

            var rgb = "#", c, i;

            for (i = 0; i < 3; i++) {

                c = parseInt(hexsubstr(i2,2), 16);

                c = Mathround(Mathmin(Mathmax(0, c + (c  lum)), 255))toString(16);

                rgb += ("00"+c)substr(clength);

            }

            return rgb;

        }

相关资源:https://blogcsdnnet/dingshi7798/article/details/105829757

你好,我看了界面之后确实很神奇

documentwrite(l + '<v:rect style="width:50px; height:50px; behavior:URL(#default#VML);" coordsize="21600, 21600" fillcolor="#' + (Mathrandom() 4096)toString(16) + '" O:SpT=' + l + ' onclick="fillon=0" />');

颜色是随机产生的 Mathrandom()4096 这里你可以改变一下试试

style:代表的风格其中width为宽度 height 为高度 用px计量

coordsize:代表调协的尺寸 数字越小 所占页面比例越大

fillcoclor 代表填充的颜色

O:Spt :关键地方 来了 这里如果去掉的话 你会看到页面上的形状是一样的 它这里是根据for 循环

Behavior:特性URL中的#VML#很重要 入去掉的话 就不会显示 也就是说没有任何特性

里面来变化形状的

谢谢!

欢迎分享,转载请注明来源:表白网

原文地址:https://h5.hunlipic.com/biaobai/3356781.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2024-02-23
下一篇2024-02-23

发表评论

登录后才能评论

评论列表(0条)

    保存