Jquery插件:从调用器中提取数据

Jquery plugin: pulling data from the invoker

本文关键字:提取 数据 调用 插件 Jquery      更新时间:2023-09-26

我写了一个Jquery插件,需要访问驻留在调用者级别(即插件外部)的信息。下面的作品,但它似乎不是一个很好的做法。访问插件外信息的最佳方式是什么?

PS:我不能在插件中包含这个函数。

插件:

(function ( $ ) {

    $.fn.test = function() {
        invokerLevelFunction();
        return this;
    };

}( jQuery ));

和调用它的javascript,包括全局函数:

function invokerLevelFunction () {
    alert ("Hello");
}
$(document).ready(function () {
     $( "div" ).test();
});  // end document ready

将其作为参数传递,以确保没有作用域问题

function invokerLevelFunction () {
    alert ("Hello");
}
$(document).ready(function () {
     $( "div" ).test(invokerLevelFunction);
}); 

插件
(function ($) {

    $.fn.test = function(callback) {
        // do stuff
        if ( typeof callback == 'function' ) callback();
        return this;
    };

}(jQuery));