我一直在寻找使用单击事件时更改图像的颜色。
我碰到了这篇文章,马克杯的第一个也是主要的回应非常有效。
但是,我需要使用类而不是ID,因为我需要更改多个图像的颜色。当我将代码更改为getElementsByClassName而不是byID时,它不再起作用。
我当然将ID = mug更改为class = mug。
我看不到代码中会导致问题的任何其他地方,因此将不胜感激。
我无法发布原始图片,因此请在此处添加。原始链接是: 如何使用jquery更改图像的颜色
这是代码:
<img src="mug.png" id="mug" width="25%" height="25%" onload="getPixels(this)" />
<input type="text" id="color" value="#6491ee" />
<input type="button" value="change color" onclick="changeColor()">
<script type="text/javascript">
var mug = document.getElementById("mug");
var canvas = document.createElement("canvas");
var ctx = canvas.getContext("2d");
var originalPixels = null;
var currentPixels = null;
function HexToRGB(Hex)
{
var Long = parseInt(Hex.replace(/^#/, ""), 16);
return {
R: (Long >>> 16) & 0xff,
G: (Long >>> 8) & 0xff,
B: Long & 0xff
};
} …Run Code Online (Sandbox Code Playgroud)