如何使用常规jquery方法链接jquery插件选项?

时间:2013-06-24 11:05:24

标签: jquery jquery-plugins

我正在创建一个名为myPlugin的插件(它是一个对象),并将选项对象作为属性添加到它中(希望我能做到这一点):

$.fn.myPlugin.options = {type: 'slideToggle'}

现在,在myPlugin对象中的方法内,我将如何更改:

$(this).next().slideToggle(200);

所以它从选项中获取了slideToggle,所以它不是硬编码的吗?

类似的东西:

$(this).next().myPlugin.options.type(200);

2 个答案:

答案 0 :(得分:0)

您可以使用括号表示法,因为它允许使用变量:

$(this).next()[self.options.type](200);
                 // ^^^ string that matches jQuery method, like slideToggle etc

答案 1 :(得分:0)

要链接你需要在你的插件中返回jQuery对象,以便它可以传递给下一个方法。

像这样:

 return this.each(function(){
        // element-specific code here
  });