易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript 颜色梯度和渐变效果更新

近来看了Dean的“Convert any colour value to hex in MSIE”,终于解决了根据关键字获取颜色rgb值的问题。
顺便把程序也重新整理一番,并使用了最近整理的工具库。
效果预览到这里
下载完整实例
程序说明
【ColorGrads颜色梯度】
程序ColorGrads的作用是根据颜色集合和渐变级数生成颜色梯度集合。
渐变级数的意思是分多少步完成渐变。
网页设计中的颜色是用RGB色彩模式呈现的。
在这个模式中每种颜色可以用三个代表红(r)、绿(g)、蓝(b)的颜色值(0到255)来表示。
从w3c的Colors部分看到标准中颜色的表示形式包括:
关键字形式:
em { color: red }
RGB形式:
em { color: #f00 }
em { color: #ff0000 }
em { color: rgb(255, 0, 0) }
em { color: rgb(100%, 0%, 0%) }
以上都是表示同一种颜色(红色)。
关键字形式就是用关键字代表颜色值。
而RGB形式,前两种用的比较多,都是一个"#"后面带16进制表示的颜色值,第三种是用十进制的颜色值,第四种是实际值跟255的百分比形式。
各个浏览器对各种颜色表示形式的获取并不相同:
"color: red"形式:
 
ie
opera
ff
chrome/safari
style
red
red
#ff0000
red
currentStyle
red
"red"
 
 
getComputedStyle
 
#ff0000
rgb(255, 0, 0)
rgb(255, 0, 0)
"color: #ff0000"/"color: #f00"形式:
 
ie
opera
ff
chrome/safari
style
#ff0000/#f00
#ff0000
rgb(255, 0, 0)
rgb(255, 0, 0)
currentStyle
#ff0000/#f00
#ff0000
 
 
getComputedStyle
 
#ff0000
rgb(255, 0, 0)
rgb(255, 0, 0)
"color: rgb(255, 0, 0)"/"color: rgb(100%, 0%, 0%)"形式:
 
ie
opera
ff
chrome/safari
style
rgb(255,0,0)
#ff0000
rgb(255, 0, 0)
rgb(255, 0, 0)
currentStyle
rgb(255,0,0)
#ff0000
 
 
getComputedStyle
 
#ff0000
rgb(255, 0, 0)
rgb(255, 0, 0)
基本上得到的值还是按标准的形式显示的,只是有些会自动转换形式。
不过ie的rgb形式跟ff/chrome/safari的不同,数值之间并没有空格。
要特别注意的是opera用currentStyle获取关键字形式得到的颜色值是带双引号的,十分奇怪,要尽量避免使用。
要获取两种颜色的渐变梯度,先要把颜色转化成能用来计算的数值。
GetColor和GetData程序就是用来把符合w3c标准表示的颜色值转化成组合该颜色的红(r)、绿


相关文档:

JavaScript如何实现“面向对象”的各种特征

 JavaScript如何实现“面向对象”的各种特征  
   
  JavaScript是一种基于对象的语言,只能使用系统提供的内置对象。如何才能用JavaScript写出象面向对象语言一样的代码呢?下面我就给大家说说我的方法。  
   
  1、定义一个类(class   &   ......

理解 JavaScript 闭包

 
要成为高级 JavaScript 程序员,就必须理解闭包。
本文结合 ECMA 262 规范详解了闭包的内部工作机制,让 JavaScript 编程人员对闭包的理解从“嵌套的函数”深入到“标识符解析、执行环境和作用域链”等等 JavaScript 对象背后的运行机制当中,真正领会到闭包的实质。
原文链接:JavaScript C ......

Firefox和IE之间7个JavaScript差异

尽管 JavaScript 历史上使用冗长而令人生厌的代码块来标的特定浏览器的时期已经结束了,但是偶尔使用一些简单的代码块和对象检测来确保一些代码在用户机器上正常工作依然是必要的。
这篇文章中,我会略述一下 Internet Explorer 和 Firefox 在 JavaScript 语法上不同的 7 个方面。
1. CSS “float” 属性
获取 ......

C#和JavaScript的简单互交

 
1.asp.net呼叫js
   
                     Response.Write("<script language=javascript>");
              ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号