我正在使用购买的bootstrap模板,其中包含一些添加的滑块和其他好东西,用于我的MVC网站。
我已经为js更改了我的bundle配置:
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
"~/js/core.min.js",
"~/js/bootstrap.min.js",
"~/js/script.js"));
我已经为css更改了我的bundle配置:
// This includes the bootstrap for the current template
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/css/style.css"));
这需要将JS和CSS放在正确的位置....相对路径和所有。然而,在自定义script.js文件中有一些轻微的问题...有一些js也加载OTHER js文件。似乎当MVC路径改变时,js包含的加载不起作用。因此,当路径为\ Home时,正确加载。当路径为\ Home \ Index(本质上是同一页面)时,js无法正确加载。
以下是我认为是问题的js示例:
var o = $(".swiper-slider");
if (o.length) {
include('js/jquery.swiper.min.js');
在我看来,我已经在处理图像等的相对路径,如下所示:
<div data-slide-bg="@Url.Content("~/images/header-4.jpg")"
class="swiper-slide">
<div class="swiper-slide-caption"></div>
</div>
要修复js包含,我可以在前面放一条斜线以强制路径回到root ...就像这样:
var o = $(".swiper-slider");
if (o.length) {
include('/js/jquery.swiper.min.js');
但是,我认为这附带了一些问题......
有关处理此问题的最佳方法的任何想法吗?
我认为标准的bootstrap.js和jquery文件可以很好地处理这个问题......
更新
现在我在加载脚本文件的js函数中添加了斜杠。 (见下文)它有效,但我仍然想知道这是否是最好的方法。
function include(scriptUrl) {
document.write('<script src="' + '/' + scriptUrl + '"></script>');
}
答案 0 :(得分:0)
所以这可以回答......
现在我在加载脚本文件的js函数中添加了斜杠。 (见下文)它有效,但我仍然想知道这是否是最佳方式。
function include(scriptUrl) {
document.write('<script src="' + '/' + scriptUrl + '"></script>');
}