
CanvasGradient.addColorStop() 方法添加一个由偏移值和颜色值指定的断点到渐变。如果偏移值不在0到1之间,将抛出INDEX_SIZE_ERR错误,如果颜色值不能被解析为有效的CSS颜色值 <color>,将抛出SYNTAX_ERR错误。
在线示例
定义从蓝色到白色的渐变,作为矩形的填充样式:
JavaScript:
<!DOCTYPE html>
<html>
<head>
<title>HTML canvas addColorStop()方法的使用(大卫编程网 div.cn)</title>
</head>
<body>
<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
您的浏览器不支持 HTML5 canvas 标签。
</canvas>
<script>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var grd=ctx.createLinearGradient(0,0,170,0);
grd.addColorStop(0,"black");
grd.addColorStop(1,"blue");
ctx.fillStyle=grd;
ctx.fillRect(20,20,150,100);
</script>
</body>
</html>测试看看 ‹/›浏览器兼容性
IEFirefoxOperaChromeSafari
Internet Explorer 9、Firefox、Opera、Chrome 和 Safari 支持 addColorStop() 方法。
注意:Internet Explorer 8 及之前的版本不支持 <canvas> 元素。
定义和用法
addColorStop() 方法规定渐变对象中的颜色和位置。
addColorStop() 方法与createLinearGradient() 或 createRadialGradient() 一起使用。
注意:您可以多次调用addColorStop()方法来更改渐变。如果为渐变对象省略此方法,则渐变将不可见。您需要至少创建一个色标才能具有可见的渐变。
| JavaScript 语法: | gradient.addColorStop(stop,color); | 
|---|
参数值
| 参数 | 描述 | 
|---|---|
| stop | 介于 0.0 与 1.0 之间的值,表示渐变中开始与结束之间的位置。 | 
| color | 在 stop 位置显示的 CSS 颜色值。 | 

更多在线示例
通过多个 addColorStop() 方法来定义七彩虹颜色渐变:
addColorStop() 方法来定义渐变七彩虹颜色演示:
<!DOCTYPE html>
<html>
<head>
<title>HTML canvas addColorStop()方法的使用(大卫编程网 div.cn)</title>
</head>
<body>
<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
您的浏览器不支持 HTML5 canvas 标签。
</canvas>
<script>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var grd=ctx.createLinearGradient(0,0,170,0);
grd.addColorStop(0,"black");
grd.addColorStop("0.3","magenta");
grd.addColorStop("0.5","blue");
grd.addColorStop("0.6","green");
grd.addColorStop("0.8","yellow");
grd.addColorStop(1,"red");
ctx.fillStyle=grd;
ctx.fillRect(20,20,150,100); 
</script>
</body>
</html>测试看看 ‹/›HTML canvas lineCap 属性 HTML canvas createLinearGradient() 方法
