我有以下情况,我有很多脚本并且它们相互冲突。
我想使用类似的东西:
$Bootstrap3('.dropdown-toggle').dropdown();
对于 jQuery(通常 $
)。
已更新
我的任务是将 Bootstrap 添加到现有项目( css problem ),我有 bootstrap
, Knockout
, JQuery
和一些其他脚本。
我想访问bootstrap
-代码显式,这样我就可以确保其他脚本不会受到影响(因为我不知道那个项目,也不知道它们将如何与 bootstrap.js react )
我当前的脚本顺序(目前没有错误,但项目很大,所以我不知道会发生什么):
var bootstrap3 = new Bundle("~/Scripts/bundle/CoreScripts").Include(
// "~/Scripts/jquery/jquery-2.1.3.js",//used before, commented out
"~/Scripts/jquery-1.11.3.min.js",// what I added
"~/Scripts/bootstrap.min.js",// what I added
"~/Scripts/jquery.formatter/jquery.formatter-0.1.5.js",
"~/Scripts/jquery.ui/jquery.ui-1.11.3.js",
"~/Scripts/knockout/knockout-3.3.0.js",
"~/Scripts/knockout/knockout.mapping-2.4.1.js",
"~/Scripts/formvalidator.net/form-validator/jquery.form-validator.js",
"~/Scripts/iban/iban.js",
"~/Scripts/sweetalert/sweet-alert.js",
"~/Scripts/jsNumberFormatter/jsnumberformatter.js",
"~/Scripts/jsNumberFormatter/jsnumberformatter.locale.js",
"~/Scripts/jquery.jqGrid/i18n/grid.locale-de.js",
"~/Scripts/jquery.jqGrid/jquery.jqGrid.js");
bootstrap3.Orderer = new BundleOrderer();
bundles.Add(bootstrap3);
上面仅显示了核心库。
类似这样的$Bootstrap3(...)
会很酷...而且我不想用于所有其他脚本,例如 .noConlfict()
最佳答案
引导插件都有一个名为 noConflict 的方法这正是您正在寻找的。p>
// return $.fn.button to previously assigned value
var bootstrapButton = $.fn.button.noConflict()
// give $().bootstrapBtn the Bootstrap functionality
$.fn.bootstrapBtn = bootstrapButton
此代码运行后 $('#example').button()
将是 Bootstrap 加载之前的状态并且 $('#example').bootstrapBtn()
将是来自 Bootstrap 的插件。
要实现这一点,引导 JS 文件必须在名称冲突的文件之后加载。
关于javascript - 专门使用Bootstrap3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33934137/