<button> элемент не распространяющий события в Firefox? - PullRequest
3 голосов
/ 14 июня 2011

Я вижу проблемы в Firefox 4.0.1, когда распространение событий не работает так, как я ожидал.Допустим, у меня есть следующий HTML-код:

<button>
    <input id='cb' type='checkbox' checked='true'>
    <span> foo</span>
</button>

и javascript:

$(document).ready(function() {
    $("button").click(function(e) {
        console.log('got click: button');
        return true;
    });
    $("#cb").click(function(e) {
        console.log('got click: checkbox');
        return true;
    });
});

См .: http://jsfiddle.net/H7fp3/10/

.) и Safari (5.0.5):

  • . Установите флажок : got click: checkbox, затем got click: button
  • . Нажмите * 1019.* кнопка сама по себе выдает: got click: button

Однако в Firefox (4.0.1) оба выдают got click: button и не изменяют флажок флажок атрибутЯ что-то здесь упускаю?Firefox правильно передает события нажатия кнопок?

1 Ответ

2 голосов
/ 14 июня 2011

Я бы сказал, что Firefox на самом деле здесь. Согласно инструменту проверки W3C , <input> не допускается внутри <button>.

Кроме того, checked="true" должно быть checked="checked", что также может вызывать проблемы (или потенциально может вызывать проблемы в других контекстах).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...