合并事件侦听器

时间:2015-07-16 01:42:18

标签: javascript jquery

我有这些事件监听器:

$(document).on("pagebeforeshow",function(e,ui){
    // do something
});
$(document).on("click","[data-json]",function(){
    // do something else
});

我可以像这样合并它们:

$(document).on({
    pagebeforeshow: function(e, ui) {
        // do something here
    },
    click: function(e) {
        // do something else here
    }
});

...但我不确定如何将点击绑定到[data-json],如第一个示例所示。

1 个答案:

答案 0 :(得分:1)

您可以使用此行

click: function(e) {
    if(!$(e.target).is($("[data-json]"))) return;
}

它会模拟你第一个例子在做什么。它仅在触发的元素具有属性data-json

时才运行该函数