Table 单元格事件侦听器
Table cell event listener
我有一段时间坚持这段代码,不知道哪里出了问题!
此 jQuery 代码函数适用于游戏的单个网页应用程序。
我需要通过单击更改 table 单元格 background-color
,但它不起作用:
$("document").ready(function() {
var y, x, cellColor;
//console.log("tata");
$("#sizePicker").submit(function(event) {
event.preventDefault();
});
$('input[type="submit"]').click(function makeGrid(y, x) {
y = Number($("#inputHeight").val());
x = Number($("#inputWeight").val());
$("#pixelCanvas tr").remove();
for (i = 0; i < y; i++) {
$("#pixelCanvas").append("<tr class='vertical'></tr>");
}
for (j = 0; j < x; j++) {
$(".vertical").append("<td class='cell' ></td>");
}
$("#pixelCanvas tr td").css("background-color", "red");
});
$("#pixelCanvas tr td").click(function() {
$(this).css("background-color", "blue");
});
});
我认为问题在于当您将点击事件绑定到 table 单元格时,这些单元格尚未创建。尝试将点击事件绑定到主体并使用 "#pixelCanvas tr td"
选择器来过滤事件消费者:而不是 $("#pixelCanvas tr td").click
编写以下内容:
$("body").on("click", "#pixelCanvas tr td", function() {
$(this).css("background-color", "blue");
});
问题是在单击 'input[type="submit"]' 之前元素尚未创建。将单元格单击的绑定移动到 'input[type="submit"]':
的单击处理程序中
$("document").ready(function() {
var y, x, cellColor;
//console.log("tata");
$("#sizePicker").submit(function(event) {
event.preventDefault();
});
$('input[type="submit"]').click(function makeGrid(y, x) {
y = Number($("#inputHeight").val());
x = Number($("#inputWeight").val());
$("#pixelCanvas tr").remove();
for (i = 0; i < y; i++) {
$("#pixelCanvas").append("<tr class='vertical'></tr>");
}
for (j = 0; j < x; j++) {
$(".vertical").append("<td class='cell' ></td>");
}
$("#pixelCanvas tr td").css("background-color", "red");
$("#pixelCanvas tr td").click(function() {
$(this).css("background-color", "blue");
});
});
});
我有一段时间坚持这段代码,不知道哪里出了问题!
此 jQuery 代码函数适用于游戏的单个网页应用程序。
我需要通过单击更改 table 单元格 background-color
,但它不起作用:
$("document").ready(function() {
var y, x, cellColor;
//console.log("tata");
$("#sizePicker").submit(function(event) {
event.preventDefault();
});
$('input[type="submit"]').click(function makeGrid(y, x) {
y = Number($("#inputHeight").val());
x = Number($("#inputWeight").val());
$("#pixelCanvas tr").remove();
for (i = 0; i < y; i++) {
$("#pixelCanvas").append("<tr class='vertical'></tr>");
}
for (j = 0; j < x; j++) {
$(".vertical").append("<td class='cell' ></td>");
}
$("#pixelCanvas tr td").css("background-color", "red");
});
$("#pixelCanvas tr td").click(function() {
$(this).css("background-color", "blue");
});
});
我认为问题在于当您将点击事件绑定到 table 单元格时,这些单元格尚未创建。尝试将点击事件绑定到主体并使用 "#pixelCanvas tr td"
选择器来过滤事件消费者:而不是 $("#pixelCanvas tr td").click
编写以下内容:
$("body").on("click", "#pixelCanvas tr td", function() {
$(this).css("background-color", "blue");
});
问题是在单击 'input[type="submit"]' 之前元素尚未创建。将单元格单击的绑定移动到 'input[type="submit"]':
的单击处理程序中$("document").ready(function() {
var y, x, cellColor;
//console.log("tata");
$("#sizePicker").submit(function(event) {
event.preventDefault();
});
$('input[type="submit"]').click(function makeGrid(y, x) {
y = Number($("#inputHeight").val());
x = Number($("#inputWeight").val());
$("#pixelCanvas tr").remove();
for (i = 0; i < y; i++) {
$("#pixelCanvas").append("<tr class='vertical'></tr>");
}
for (j = 0; j < x; j++) {
$(".vertical").append("<td class='cell' ></td>");
}
$("#pixelCanvas tr td").css("background-color", "red");
$("#pixelCanvas tr td").click(function() {
$(this).css("background-color", "blue");
});
});
});