我尝试使用此简单功能:
http://code.google.com/p/canvasimagegradient/
我必须使用canvas和js创建线性透明渐变(我的图像必须是动态的),但是我的代码无法正常工作。
你能告诉我哪里错了吗?
var ctx = $('#thecanvas')[0].getContext("2d");
var theImage= $('#theimage');
var linearGradient = ctx.createLinearGradient(0, 0, 0, theImage.height);
linearGradient.addColorStop(0, "transparent");
linearGradient.addColorStop(1, "#000");
ctx.drawImageGradient(theImage, 12, 65, linearGradient);
调试器只是对我说:
控制台说:
NOT_SUPPORTED_ERR: DOM Exception 9: The implementation did not support
就在这一行下面:
var linearGradient = ctx.createLinearGradient(0, 0, 0, theImage.height);
在此先感谢:)
最佳答案
是因为您将图像作为jQuery对象获取,高度是一个函数,而不是一个属性?所以您应该有theImage.height()
,而不是theImage.height
?