var old = $.fn.tab
$.fn.tab = Plugin
$.fn.tab.Constructor = Tab
// TAB NO CONFLICT
// ===============
$.fn.tab.noConflict = function () {
$.fn.tab = old
return this
}
这是bootstrap插件的一段代码。后面定义noConflict函数是干什么的。
用于处理可能的命名冲突问题(conflict),特别是在与其他JavaScript库或插件一起使用时。在这段代码中,noConflict函数的作用是将之前保存的 $.fn.tab 的引用恢复为原先的值,然后返回 this(即 $.fn.tab 插件对象)。
这样做的目的是,在可能出现命名冲突的情况下(比如在同时使用多个插件,并且它们都定义了相同的名称),通过调用 $.fn.tab.noConflict() 可以将当前的插件对象恢复为之前的值,以避免冲突发生。
通过使用 noConflict 函数,可以确保插件与其他库或插件的兼容性,并且能更好地控制插件的使用和命名空间。