jQuery Prototype冲突,替代解决方案

Lor*_*nzo 2 javascript jquery conflict prototypejs

我有一个问题,因为我有条件地包括IE6的基于Prototype的Lightbox脚本,因为它比jQuery插件更好.

当然这两个库存在冲突,但官方的解决方案对我来说并不可行,因为我不得不用替代的无冲突语法替换大量的$.

有没有其他的解决方案,请记住,在我的情况下,让Prototype与jQuery很好地工作比使用其他方法更容易?

T.J*_*der 5

如果您需要在与jQuery代码相同的窗口中使用Prototype代码(您的灯箱事物),那么您唯一的选择就是您不想使用的那个:.jQuery.noConflict

如果您可以将灯箱内容限制为在iframe中工作,则只能在iframe中加载Prototype而不是主窗口.但我怀疑这对你正在做的事情来说太过分了.:-)

问题是Prototype没有一个没有冲突的选项(现在没有活动计划提供一个)并且它不容易包含在范围函数中以包含符号(因为你真正关心的是全局符号,而不是原型扩展,jQuery可以随身携带).也就是说,如果您使用prototype.js文件并将其与灯箱插件的文件相结合,将整个内容包装在一个范围函数中,然后寻找全局符号泄漏,您可能会这样做.这将是一项非常重要的练习,特别是如果你不熟悉Prototype的话.但是如果iframe的东西太过分了,那么这可能是从轨道上进行的.:-)