我有一张表格是使用图片中的javascript生成的。表的大小取决于图像的大小。它读取rgb中的像素颜色。然后将每个像素转换为单元格。 (我有这样的表格作为例子):
<table height="100" width="100">
<tbody>
<tr>
<td style="background-color: rgb(121,117,92);"></td>
<td style="background-color: rgb(121,117,92);"></td>
<td style="background-color: rgb(121,117,92);"></td>
<td style="background-color: rgb(121,117,92);"></td>
<td style="background-color: rgb(127,129,116);"></td>
<td style="background-color: rgb(127,129,116);"></td>
</tr>
<tr>
<td style="background-color: rgb(121,117,92);"></td>
<td style="background-color: rgb(121,117,92);"></td>
<td style="background-color: rgb(121,117,92);"></td>
<td style="background-color: rgb(127,129,116);"></td>
<td style="background-color: rgb(127,129,116);"></td>
<td style="background-color: rgb(127,129,116);"></td>
</tr>
</tbody>
</table>
根据它的大小,最小化html代码是完美的。但是我需要在生成图像的网页上做更多的事情:
简单地说:按下单元格 - 检查颜色 - 在一行中检查它附近的相同单元格 - 计算它们 - 给工具提示提供单元格数。
也许有一些javascript库,比如JQuery,我需要哪些功能?
答案 0 :(得分:0)
这是一个帮助您入门的小POJ。
的Javascript
function clickedCell(e) {
var target = e.target,
previous,
next,
styleTarget,
stylePrevious,
styleNext;
if (target.tagName.toUpperCase() === "TD") {
styleTarget = window.getComputedStyle(target);
console.log("clicked td color", styleTarget.backgroundColor);
previous = target.previousElementSibling;
if (previous && previous.tagName.toUpperCase() === "TD") {
stylePrevious = window.getComputedStyle(previous);
console.log("previous td color", stylePrevious.backgroundColor);
} else {
console.log("no previous td");
}
next = target.nextElementSibling;
if (next && next.tagName.toUpperCase() === "TD") {
styleNext = window.getComputedStyle(next);
console.log("next td color", styleNext.backgroundColor);
} else {
console.log("no next td");
}
}
}
document.addEventListener("click", clickedCell, false);
上