jQuery调用函数在定义的插件之外

时间:2017-11-13 22:26:15

标签: jquery jquery-plugins

嘿所有我有以下jQuery代码,我用于工具提示类型的东西:

$(function () {
    /* popModal */
    $('#pop-overlay').on('click', function () {
        popModalClose();
    });

    (function ($) {        
        $.fn.popModal = function (method) {
            var elem                    = $(this),
            [ect,......etc...]
        function popModalClose() {
            elemObj = $('div[' + elemData + ']');
            elem.removeAttr(elemData + '_id');                
            $('[data-item-id="' + elem.attr('data-item-id') + '"]').css({ 'z-index': '50' });
            $('#currentUsers').select3({ showDropdown: true });

            if (elemObj.length) {
                reverseEffect();
                $('.' + elemClass + '_source').replaceWith($('.' + elemClass + '_content').children());
                elemObj.remove();
                $('html.' + elemClass + 'Open').off('.' + elemClass + 'Event').removeClass(elemClass + 'Open'); 
                $('#pop-overlay').clearQueue().stop().fadeOut('slow');
                clickedAlready = false;
            }
        }
        [ect,......etc...]
     };
   })(jQuery);
});

当我点击名为 pop-overlay 的叠加层时,我想要做的就是调用 popModalClose

目前,使用上面的代码,它给我一个错误,它无法找到函数 popModalClose()

我试过了:

$.fn.popModal.popModalClose();
$.fn.popModalClose();
$popModal.popModalClose();
$popModalClose();
$.popModal.popModalClose();

1 个答案:

答案 0 :(得分:1)

该插件使用hide方法调用popModalClose

$('html').popModal("hide");