2011-08-19 63 views
3

我目前正在研究jQuery的一个库插件,最终可能会作为一个开源项目发布。在jQuery中命名空间?

我写了一些自定义元素函数,并希望将与我的库相关的所有内容存储在名称空间中。

例如,假设我有一个叫做toggle()的函数。通常,这将使用$(selector).toggle()来调用。不过,我想称之为使用$(selector).mylib.toggle()等其他函数,以免干扰其他库或插件。

我以前开发过jQuery插件,但从来不需要用这种方法保护方法。任何人都可以向我指出如何编写函数来实现这一目标?

+0

感谢您的编辑,inti。我在iPhone上写了这个,所以没有访问这些字符。 – BenM

回答

6

我不完全确定,为什么你想要这样做,而不是使用一个包含你的方法的“普通”命名空间对象。但是,你可能想看看

jQuery.sub() 

说明:创建jQuery的,其属性和方法 可以在不影响原有的jQuery对象被修改的新副本。

通过“分类”(分类)jQuery对象,您不必关心与其他插件冲突了。所以如果这是唯一的担忧,那就去做吧。

Ref .: .sub()