Javascript 定义并触发自定义事件
我需要在我的数据表的单元格上调用自定义事件。因此,我有以下方法:Javascript 定义并触发自定义事件,javascript,jquery,Javascript,Jquery,我需要在我的数据表的单元格上调用自定义事件。因此,我有以下方法: (function ($) { $.fn.longClick = function (callback) { //event }; })(jQuery); 为了进行绑定,作为测试,我执行以下操作: $("h1").longClick(function () { console.log('triggered'); }); 我需要替换我的单击事件: $('#dtStatus').on('click', 'tbo
(function ($) {
$.fn.longClick = function (callback) {
//event
};
})(jQuery);
为了进行绑定,作为测试,我执行以下操作:
$("h1").longClick(function () {
console.log('triggered');
});
我需要替换我的单击事件:
$('#dtStatus').on('click', 'tbody td:not(:first-child)', function (e) {
console.log('triggered');
});
和我的长新闻发布会
$('#dtStatus').on('longClick', 'tbody td:not(:first-child)', function (e) {
console.log('triggered');
});
h1
longclick和td
click事件起作用,但tdlongpress
不起作用。
有人能告诉我为什么我不能在('longClick')上使用我的事件吗
谢谢。我认为你把功能和事件混为一谈了。使用
$.fn.longClick
创建了一个函数,您已经使用$(“h1”).longClick(…)
成功调用了该函数
现在,要像事件一样使用它,首先需要触发它。例如:
$('#dtStatus').click(function() {
$(this).trigger("myEvent");
});
它会在所单击的项目上触发名为myEvent
的事件。然后,您可以通过以下方式捕捉该事件:
$('#dtStatus').on("myEvent", function() {
alert("myEvent called!");
});
您可以在中阅读有关自定义事件的更多信息。对于('longClick')上的
要工作,您需要在代码中的某个位置使用trigger('longClick')
。您正在这样做吗?在您的情况下,longClick
不是一个事件,而是一个插件(除非您使用trigger()
方法在plugin@RoryMcCrossan不,我没有那样做。对不起,我很难理解trigger('longClick')的作用
。你能告诉我更多的细节吗?@ArunPJohny,谢谢你的answare。我不熟悉trigger()
的用法。我要做一些搜索