在.trigger中使用时,冒号在jQuery中意味着什么?

时间:2016-10-18 23:42:57

标签: javascript jquery triggers colon

我看了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();
    }
};

1 个答案:

答案 0 :(得分:2)

冒号指定自定义事件,实质上为以后可以调用的事件创建名称空间,而不会覆盖默认事件或必须在同一事件上创建多个侦听器。

您可以在此处找到更多信息:https://learn.jquery.com/events/introduction-to-custom-events/