我第二次点击它时会打开javascript链接

时间:2013-06-08 11:15:33

标签: javascript html

我有一个我想要打开的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;
    });
});

所以,发生的奇怪事情是,如果我点击它几次,它有时会起作用。我一定忘记了这里至关重要的事情,但似乎无法找到答案。

2 个答案:

答案 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));来调试问题。