2013-04-24 4 views
-2

Я делаю игру tic-tac-toe используя HTML5, CSS и JavaScript. Я определил выигрышные шаблоны и более или менее, как заставить его работать. Нет никакого искусственного интеллекта; он предназначен для игры player-vs-player-on-the-alone.Как узнать, какой div был нажат?

enter image description here

Все, что я хочу сделать, это:

  • Знайте, когда ДИВ щелкают
  • Know который ДИВ щелкают
  • Скажите, пожалуйста, если это возможно. Если да, то каким образом. Шаги оценены, не публикуйте полный код :)

    +0

    @techfoobar Да, мне это нравится :) –

    +0

    https://developer.mozilla.org/en-US/docs/Talk:DOM/element.addEventListener – PeeHaa

    +0

    ли вы принять решение с помощью JQuery? – Jonast92

    ответ

    5

    Bind an event listener в контейнер, а затем осмотрите объект события объекта события, чтобы определить, какой элемент был нажат.

    Серьезно подумайте о замене <div> s на <button> s, так как они предназначены для интерактивности (так что имеют преимущества, такие как автоматическое появление в порядке фокусировки).

    +0

    Хорошо, предложение принято. В результате 'document.querySelectorAll (« button »)' будет возвращено много кнопок 'button'. У всех 'кнопок' будет тот же самый слушатель? –

    +1

    @LittleChild - Нет. Есть один слушатель на контейнере. – Quentin

    +0

    Вы можете сделать все кнопки одного и того же прослушивателя, но вы можете иметь каждую кнопку с уникальным идентификатором, чтобы вы могли узнать, какой из них был нажат. – Jonast92

    -3

    Возможно, вы должны использовать javascript (JQuery) для этого. Вы можете зарегистрировать слушателей для щелчка мыши, где вы можете поймать идентификатор div, который был нажат на

    +2

    1. jQuery упростит работу, но не нужен как таковой. 2. Рассказывать можно, это не ответ. – techfoobar

    0

    this, если вы используете JQuery, это может быть очень простой:

    $("div.box").on("click", function() { $(this).addClass("clicked"); }); 
    

    выше будет проверять любой DIV с классом «коробки», и добавить «щелкнул» класс к нему

    не уверен, почему это было приостановлено. Вот пример, показывающий, что он работает .. даже для образца того, что, по моему мнению, было необходимо.

    http://jsfiddle.net/LCKr6/1/

    +0

    ОП не заявлял о желании использовать jquery в качестве решения. – Xotic750

    +0

    @ Xotic750, ответ использовал 'this', jquery был просто использован в примере использования этого' this'. – smerny

    +0

    Вы можете изменить свой ответ, чтобы отразить ванильный javascript. – Xotic750

    Смежные вопросы