我有一个我想要打开的javascript链接,但它只在我点击它的第二个工作。我想点击我为此创建的Div,并且没有涉及锚标签。
我使用的HTML:
<li>
<div class="artikel_box_lk">
<div class="button" rel="$productNameSeo">
<span>More Info >></span>
</div>
</div>
</li>
我用于此的javascript代码:
$(function(){
$(".artikel_box_lk").click(function(e) {
if($(e.target).hasClass("button")) window.open("/lk/" + $(e.target).attr("rel"), "_blank");
return false;
});
});
所以,发生的奇怪事情是,如果我点击它几次,它有时会起作用。我一定忘记了这里至关重要的事情,但似乎无法找到答案。
答案 0 :(得分:3)
尝试将.button
添加到您的点击选择器:
$(function(){
$( ".artikel_box_lk .button" ).click(function( e ) {
window.open( "/lk/" + $( this ).attr("rel"), "_blank");
});
});
我想第一次点击.button
div
答案 1 :(得分:1)
这是因为你说e.target
的班级名称是“按钮”;只有在单击span元素及其父元素不重叠的区域时才会出现这种情况。当你单击span元素时,它会说“target”是“span”元素,它没有类名“button”。始终执行console.log($(e.target));
来调试问题。