HTML

<div id="color"></div>

CSS

.item{
display:inline-block;
margin:10px;
width:100px;
height:30px;
}

JAVSCRIPT

/*
颜色渐变DEMO
目前支持红色系和蓝色系
5个及以下使用预设颜色
5个以上根据最大最小值进行动态计算
*/ function getItemColors (colorLevel=5, color_string='red') {
function setter (color_string) {
if (!color_string) {
color_string = 'red'
}
if (color_string === 'red') {
red = 244,green = 0, blue = 0;
maxRed = 244 ,maxGreen = 110,maxBlue = 110;
}
if (color_string === 'blue') {
red = 94,green = 48, blue = 183;
maxRed = 134 ,maxGreen = 108,maxBlue = 184;
}
} var red, green, blue, maxRed, maxGreen, maxBlue
var colors= [];
var base_lavel = 5 setter(color_string)
var level = (function(colorLevel){
return Math.max(colorLevel, base_lavel)
})(colorLevel) ;
var count = level
while(count--) {
colors.push( 'rgb('+red +','+green+','+blue+')');
red += parseInt(maxRed/level);
green += parseInt(maxGreen/level);
blue += parseInt(maxBlue/level);
}
if (colorLevel < base_lavel) {
switch(colorLevel) {
case 0:
return colors
case 1:
return [colors[2]]
case 2:
return [colors[2], colors[3]]
case 3:
return [colors[1], colors[2], colors[3]]
case 4:
return [colors[1], colors[2], colors[3], colors[4]]
case 5:
return colors
default:
return colors
}
} else {
return colors;
}
} var arr = getItemColors(5, 'blue')
var all = ""
var html = ['<span class="item" style="background:','"></span>'] arr.forEach(function(item){
var h = html[0] + item + html[1]
all += h
}) console.log(arr) document.getElementById('color').innerHTML = all

效果:

以上。

javascript实战 : 简单的颜色渐变的更多相关文章

  1. [原创] JavaScript实现简单的颜色类标签云

    效果预览: 源码分享: <!DOCTYPE html><html><head lang="en"> <meta charset=" ...

  2. JavaScript实战(带收放动画效果的导航菜单)

    虽然有很多插件可用,但为了共同提高,我做了一系列JavaScript实战系列的实例,分享给大家,前辈们若有好的建议,请务必指出,免得误人子弟啊! ( 原创文章,转摘请注明:苏福:http://www. ...

  3. iOS 动画绘制线条颜色渐变的折线图

    效果图 .................... 概述 现状 折线图的应用比较广泛,为了增强用户体验,很多应用中都嵌入了折线图.折线图可以更加直观的表示数据的变化.网络上有很多绘制折线图的demo,有 ...

  4. 【iOS实现一个颜色渐变的弧形进度条】

    在Github上看到一些进度条的功能,都是通过Core Graph来实现.无所谓正确与否,但是开发效率明显就差很多了,而且运行效率还是值得考究的.其实使用苹果提供的Core Animation能够非常 ...

  5. JavaScript实战-菜单特效

    以下是我自己用原生JS写的各种菜单特效,虽然网上一搜一大堆,但我还是喜欢自己来写一写! 这是上一篇:JavaScript实战(带收放动画效果的导航菜单) 下面是经过优化后的完整代码,优化了CSS样式. ...

  6. 颜色渐变的JS代码

    今天做组织机构,要分级别显示颜色,自己计算半天也没算出颜色渐变的方法,出来总是花里胡哨的难看的不要不要的,所以查了一下,找到一个js代码,试了试,很完美哦! <!DOCTYPE html> ...

  7. iOS 之使用CAShapeLayer中的CAGradientLayer实现圆环的颜色渐变

    本文转载自:http://blog.csdn.net/zhoutao198712/article/details/20864143 在 Github上看到一些进度条的功能,都是通过Core Graph ...

  8. javascript 实战总结

    JavaScript的简单的知识前面已经总结  欢迎交流学习,学习靠的是理论+实践,  通过姜昊老师的JavaScript专题训练,加深了对理论知识的理解,学习新的语言越来越发现熟悉的背景,基础内容是 ...

  9. jQuery 小特效【文本框折叠隐藏,展开显示】【下拉菜单】【颜色渐变】【弹窗+遮罩】

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs& ...

随机推荐

  1. SpringBoot读取application.properties中文乱码

    [本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究.若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!] 解决方案 在ID ...

  2. java之SFTP上传下载

    import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.ut ...

  3. RabbitMQ:五、高阶

    存储机制 持久化的消息和非持久化的消息都可以被写入到磁盘. 持久化的消息一开始就会写入磁盘,如果可以,也会在内存中保存一部分以提高性能,当内存吃紧时会从内存中清楚. 非持久化的消息一般存储在内存中,内 ...

  4. python 模块 来了 (调包侠 修炼手册一)

    模块 什么是模块 模块:就是一系列功能的结合体 ,也可以说 一个.py文件包含了 Python 对象定义和Python语 那么 他就 可以说是 一个模块 模块的三种来源: 1.内置的(python解释 ...

  5. Python3-datetime模块-日期与时间

    官方文档 http://python.usyiyi.cn/translate/python_352/library/datetime.html 代码示例 from datetime import da ...

  6. Java | 顶层类(Top-Level Class)

    前言 本文内容根据 Java 官方教程中的<课程:类和对象>编写而成. 本文提供的是 JDK 14 的示例代码. 定义 顶层类(Top-Level Class),是 Java 中对类的一种 ...

  7. 并发02--JAVA内存模型

    在并发编程中,需要解决两个问题:线程间如何通信&线程间如何同步 线程同步:控制不同线程操作顺序的机制 解决这两个问题的方案有两种:共享内存&消息传递 共享内存:通过使用共享内存,隐式通 ...

  8. Nginx 从入门到放弃(五)

    nginx的rewrite重写 nginx具有将一个路由经过加工变形成另外一个路由的功能,这就叫做重写. 重写中用到的指令 if (条件) {} 设定条件,再进行重写 set # 设定变量 retur ...

  9. 功能+自动化测试代码扫描(demo)

    Jacoco 是一个开源的覆盖率工具.Jacoco 可以嵌入到 Ant .Maven 中,并提供了 EclEmma Eclipse 插件,也可以使用 Java Agent 技术监控 Java 程序.很 ...

  10. 一文说清 KubeSphere 容器平台的价值

    KubeSphere 作为云原生家族 后起之秀,开源近两年的时间以来收获了诸多用户与开发者的认可.本文通过大白话从零诠释 KubeSphere 的定位与价值,以及不同团队为什么会选择 KubeSphe ...