Я пытаюсь сделать tictactoe проект в jQuery, и у меня возникла серьезная проблема ...
Плитки находятся в тегах <td>
, и я пытаюсь сделать так, чтобы, когда пользователь щелкаетна плитке он вызывает «помеченную» функцию.
Если мы теперь посмотрим на «помеченную» функцию, $(this)
предназначен для узла <td>
, из которого была вызвана функция.
Однако он ничего не делал, поэтому я проверил консоль и, очевидно, $(this)
содержал объект DOM Window.
Могу ли я в любом случае отправить правильный тип $(this)
в "отмеченную" функцию?
Спасибо!
<script type="text/javascript">
var TURN_X = false;
var TURN_O = true;
var turn = false; // this is to see whos turn it is.
$(document).ready(function(){
var listCells = $.makeArray($("td"));
$("td").click(function(){marked(listCells)}); //THIS IS WHERE I HAVE PROBLEMS
return false;
});
function marked(arr)
{
console.log($(this)); // THIS CONSOLE LOG RETURNS "DOM Window"
$(this).addClass("marked");
if(turn == TURN_X)
{
this.innerHTML = "X";
turn = false;
}
else
this.innerHTML = "O";
var tileNum = $(this).attr("id");
}