如何阻止链接被使用(使用此事件处理程序)?
http://jsfiddle.net/chovy/rsqH7/1/
<table>
<tbody>
<tr class="msg">
<header><a href="http://cnn.com">cnn.com</a></header></tr>
</tbody>
</table>
$('table').on('click', 'tr.msg header', function (e) {
e.preventDefault();
var $el = $(e.currentTarget);
console.log($el);
});
答案 0 :(得分:4)
您的HTML无效; <header>
无法直接显示在<tr>
中,而这会破坏整个事情。如果添加alert
,您会注意到根本没有调用处理程序。
检查DOM给了我这个:
<header><a href="http://cnn.com">cnn.com</a></header>
<table>…</table>
这是浏览器,一如既往地有用! Correcting the HTML by putting adding a <td>
fixes it.(或者您的意思是<th>
而不是<header>
?)