我看了http://api.jquery.com/trigger/,示例没有回答我的问题。我正在查看一些代码,并想知道这段代码正在做什么。
$(document).on('click', '#SubmitQuery', function(event) {
event.preventDefault();
$(document).trigger('filter:submit');
});
具体来说,触发器功能内部的冒号是做什么的?对于完整的上下文,这里是什么过滤器(我假设触发器函数内部的'过滤器'引用该过滤器对象):
var filter = {
init: function() {
$(document).on('keypress', '#Filter', debounce(function(event) {
if (event.keyCode == 13) {
$(document).trigger('filter:text');
}
}, 300));
$(document).on('click', '#ClearFilter', function(event) {
event.preventDefault();
$('#FilterText').val('');
$('#FilterText').focus();
$(document).trigger('filter:clear');
});
$(document).on('change', '.filterSection [type=checkbox]', function(event) {
var group = $(this).parents('[data-filter-group]').attr('data-filter-group');
var $checkboxes = $('[data-filter-group=' + group + '] [type=checkbox]');
if ($checkboxes.length > 0) {
if ($checkboxes.filter(':checked').length === 0) {
$(this).prop('checked', true);
}
}
});
$(document).on('click', '#SubmitQuery', function(event) {
event.preventDefault();
$(document).trigger('filter:submit');
});
$("#Filter").focus();
}
};
答案 0 :(得分:2)
冒号指定自定义事件,实质上为以后可以调用的事件创建名称空间,而不会覆盖默认事件或必须在同一事件上创建多个侦听器。
您可以在此处找到更多信息:https://learn.jquery.com/events/introduction-to-custom-events/