J'essaie d'utiliser un CDN pour charger jquery. J'ai lu l'article this et cela semble être très simple.
Mon ensemble de scripts est défini comme suit.
bundles.UseCdn = true;
bundles.Add(new ScriptBundle("~/bundles/jquery", "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js").Include(
"~/Scripts/jquery-{version}.js"));
Je l'inclus sur la page comme suit:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>@ViewBag.Title</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
<body>
@RenderBody()
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
</body>
</html>
Mais quand je regarde Firebug, il semble que jquery soit chargé depuis localhost.
J'ai essayé à la fois avec les versions de version et de débogage. Qu'est-ce que je rate? Je pense que cela devrait être assez simple. Merci.
Exécutez votre application dans debug="false"
mode ou utilisez BundleTable.EnableOptimizations = true;
En fait, vous pouvez écrire à @RaviGadag sa méthode plus courte lorsque vous utilisez une version récente d'ASP.NET MVC. De cette façon, vous n'avez pas à écrire vous-même la solution de rechange dans la mise en page:
public static void RegisterBundles(BundleCollection bundles)
{
bundles.UseCdn = true;
var jqueryCdnPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.1.3.min.js";
var jqueryBundle = new ScriptBundle("~/bundles/jquery", jqueryCdnPath).Include("~/Scripts/jquery-{version}.min.js");
jqueryBundle.CdnFallbackExpression = "window.jQuery";
bundles.Add(jqueryBundle);
// ...
BundleTable.EnableOptimizations = true;
}
versions jquery disponibles dans le Content Delivery Network (CDN): http://www.asp.net/ajax/cdn#jQuery_Releases_on_the_CDN_
assurez-vous que vous n'êtes pas en mode débogage.
bundles.Add(new ScriptBundle("~/bundles/jquery", "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js")
ensemble BundleTable.EnableOptimizations = true;
// si vous souhaitez utiliser le mode débogage
jQuery sera demandé au CDN en mode de publication et la version de débogage de jQuery sera récupérée localement en mode de débogage. Lorsque vous utilisez un CDN, vous devez disposer d'un mécanisme de secours en cas d'échec de la demande de CDN.
si la demande CDN échoue, vous pouvez fournir un rappel
<script type="text/javascript">
if (typeof jQuery == 'undefined') {
var e = document.createElement('script');
e.src = '@Url.Content("~/Scripts/jquery-1.7.1.js")';
e.type = 'text/javascript';
document.getElementsByTagName("head")[0].appendChild(e);
}
</script>