альтернативно, вы можете использовать event.stopImmediatePropagation()
в обработчике событий последней кнопки col.
$('#movies tr').click(function () {
var href = $(this).find("a").attr("href");
if(href) window.location = href;
});
$('#movies input:button').click(function (e) {
// button's stuff
e.stopImmediatePropagation();
});
преимущество (или неудобство) состоит в том, что вы можете нажимать вокруг кнопки в последней ячейке.(в отступе поля).Я могу быть неудобным, так как нажатие кнопки пропуска откроет связанную страницу и удивит пользователя.
Другой альтернативой может быть использование только одного обработчика событий, который решает, какое действие делать с event.which.Это мой любимый метод, так как он ограничивает количество обработчиков событий.использование делегата по той же причине.Один обработчик за таблицей, а не один за строкой.
$('#movies').delegate('tr', 'click', function (e) {
if ( $(e.target).is('input:button') ) {
// button's stuff
}
else {
var href = $(this).find("a").attr("href");
if(href) window.location = href;
}
});