javascript - 从 jquery 插件外部调用 this.each(function(){}) 中的函数

标签 javascript jquery

(function( $ ){

$.fn.foo = function(params) {

    params = $.extend( {
        on: false
    }, params);

    this.each(function(){
        if(params.on) {
            function alertDate(){
                alert('FOO BAR!!!');
            }
        }
    });
};
})( jQuery );

如何从脚本外访问“alertDate()”函数?

如果我使用:

$('#test').foo()

将允许我访问该函数,好的,一切正常,我将在 this.each(function(){}) 内部访问函数“alertDate()”。

我想通过类似的方式从外部访问函数“alertDate()”:

$('#text').foo({on: 'true'}).each().alertDate();

我该怎么做?

提前致谢,抱歉英语不好

最佳答案

下面是我将如何处理它,以便您的 alertDate() 函数可以在内部和外部使用:

$.fn.foo = function(params) {
    params = $.extend( {
        on: false
    }, params);

    this.alertDate = function(){
        alert("FOO BAR!!!");
    }

    this.each(function(){
        if(params.on) {
            this.alertDate();
        }
    });

    return this; 
};

//Externally the alertDate function could be called as:
$("test").foo().alertDate();

关于javascript - 从 jquery 插件外部调用 this.each(function(){}) 中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14259234/

相关文章:

javascript - 使用 jQuery 添加类仅适用于第一个元素

javascript - 使用 JavaScript 计算鼠标滚轮滚动速度

javascript - 检测是否从值中选择了特定选项

javascript - 如何使用jquery在鼠标移动到页面底部时自动滚动窗口

javascript - 如何显示嵌入的 Tumblr 帖子的轮播?

javascript - Node 中的日期 toLocaleDateString

javascript - 如何使用 Vanilla JavaScript 或 JQuery 实现受控组件(在 ReactJS 中)

javascript - Jquery 中 .sortable 函数的问题

jquery - 选择 data() 值作为所有选定输入的数组

image - Woocommerce 产品图片白点 Internet Explorer 错误