所需行为 - 如果您点击" .card"除了"按钮",导航到该链接。我没有使用window.location,因为我希望用户能够自行决定是否需要新的选项卡,窗口或只是导航。
实际行为 - 链接未导航到,但我得到以下控制台输出(粘贴在下面):
HTML
<div class="card">
<button>Action</button>
<div class="content"></div>
<a href="/i/399doglsk" class="public-id"></a>
<button>Another Action</button>
<div class="some-more-content"></div>
</div>
JS
$('.card').on('click', function() {
console.log('.card');
if ($(e.target).is('button')) {
$(this).find('a.public-id').click();
}
});
$('body').on('click', "a.public-id", function(e) {
console.log('a.public-id');
e.stopPropagation();
});
控制台输出:
card
card
a.public-id