.click()事件无法在<span>?</span>上运行

时间:2014-12-11 15:27:50

标签: javascript jquery javascript-events event-handling

我想在某个范围内触发点击事件,但它无效。我尝试了以下两种方法:

$('#my_span').click();
$('#my_span').trigger("click");

但后来我尝试了:

$('#my_span').focus();

这很有效!谁知道为什么?我不是试图绑定一个处理程序,只是尝试触发click事件,就像用户点击该范围一样。请帮忙,谢谢!

3 个答案:

答案 0 :(得分:0)

尝试在DOM元素上触发click,而不是在元素的jQuery集合上触发:

$('#my_span')[0].click();

或者:

document.getElementById('my_span').click();

答案 1 :(得分:0)

您的跨度是否包含任何信息?是0px x 0px的元素吗?如果是这种情况,将永远不会触发点击。

例如,如果您在<span><i>内看到一个超棒的字体图标,因为它无所点击,因此它将永远不会被触发。

答案 2 :(得分:-1)

//编辑,因为我无法正确阅读^^ //

我会链接两个事件处理程序

$(document).on("event you desire","desired target", function() {  
        $("#my_span").trigger("click");
    });

然后:

$(document).on("click","#my_span", function() {  
    //stuff to happen
});

http://jsfiddle.net/vvt8Lvvu/ - jsfiddle for demo