我在这个网站上遇到过大量的jQuery Plugin Patters(样板):
尽管如此,我看起来更进一步,但我无法找到任何可以按预期工作的东西。我对jQuery的了解很少,但我认为如果我开始为自己创建一些小插件,我将获得最好的收获......只是为了好玩和了解更多。
所以我喜欢这样的模式: Best Options Pattern
它看起来干净,对我很好。但是我不知道为什么我不能像我们可以找到的所有其他插件那样调用插件...例如backstretch JS或Make it Retina ......就像这样调用它。
$.backstretch('path to image');
$.makeItRetina();
所以我尝试了一些我认为可行的方法,并且从上面的模式中调用插件的唯一方法是:
$(document).pluginName();
而且我不想那样......如果它只是
,它看起来更好,更简洁$.pluginName();
有人向我展示如何做到这一点的路径/方式吗?我真的很困惑。
答案 0 :(得分:3)
如果你想扩展jQuery对象本身(调用$
上的方法)不要扩展$.fn
,只需扩展$
。
当你扩展(添加方法)$.fn
时,它们是通过$(selector).method
而不是你正在寻找的$.method
语法来调用的,这不需要JavaScript的特殊行为。
答案 1 :(得分:0)
尝试:
var plug = $(document).pluginName();
然后调用plug.makeItRetina();或者plug.backstretch('path to image');
希望这会有所帮助。
编辑:不正确但留下评论,以防我学到的课程可以被其他人学习。 :)