2009-12-31 106 views
0

假设我有在网站上包含一些代码如下主要js文件:防止jQuery的原型/插件方法之间的冲突

$.fn.extend({ 
    break: function(){ 
    //code here 
    }, 
    cut: function(){ 
    //code here 
    }, 
    // ...many other methods 
}); 

我用它像这样:

$('#mydiv').break().animate() ... 

现在如果我添加一个外部的jquery插件文件,它也有一个'break'方法,我如何防止我的$ .fn方法和其他人之间的冲突?

回答

3

你不能。

这就是为什么许多插件(如jQuery UI)只将单个方法添加到以动作名称作为参数的原型。

+0

刚刚来到这个问题:http://stackoverflow.com/questions/1537848/jquery-plugin-namespace 我还没试过这个,但是它接近我在找什么?如果我在'$ .fn.myNamespace'中放置'break'和'cut'方法,它会起作用吗? – fenderplayer 2009-12-31 20:47:55

+0

是的,这也会起作用。不过,我从来没有见过一个真正的插件。 – SLaks 2009-12-31 21:20:14