.click() 事件在 <span> 上运行

.click() event operating on <span>?

本文关键字:span 运行 事件 click      更新时间:2023-09-26

我想在跨度上触发单击事件,但它不起作用。我尝试了以下两种方法:

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

但后来我尝试了:

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

这奏效了!有人知道为什么吗?我不是在尝试绑定处理程序,只是尝试触发单击事件,就像用户单击该跨度一样。请帮忙。

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

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

或:

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

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

例如,如果您在<span><i>中查看字体真棒图标,它将永远不会被触发,因为它没有可点击的内容。

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

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

$(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