我对MVC3 .net编程&最近在我的一个内部项目中,我试图实现一个功能,在页面加载时显示加载图像。 (使用jquery函数调用。)
问题: 如果我浏览路由映射中定义的默认URL。图像没有加载,但我可以看到所有样式都在页面上填充。但是,如果我使用网页上定义的超链接导航到同一页面,图像将按预期加载。我不确定我在这里失踪了什么。 jquery load& amp; jquery-ajax请求/响应函数(超链接导航工作时默认导航不起作用)。
链接:
http://testserver/sitename - >此链接使用默认路由,其中图像未加载。
http://testserver/sitename/ - &gt;这是在下面定义的网页上的超链接,其中图像按预期加载。 @ Html.ActionLink(&#34; menu_item_1&#34;,&#34;索引&#34;,&#34; Home&#34;,null,new {@class =&#34; menu&#34;})< / p>
这两个链接都在呼叫同一个控制器&amp;重定向到索引视图页面。
代码:
<style type="text/css">
#loader {
position: fixed;
left: 0px;
top: 0px;
width: 100%;
height: 100%;
z-index: 9999;
background: url('content/themes/base/images/preloader_8.gif') 50% 50% no-repeat rgb(249,249,249);
opacity: .8;
}
</style>
<script src="@Url.Content("~/Scripts/jquery.min.js")" type="text/javascript"></script>
<script type="text/javascript">
$(window).load(function () {
$("#loader").fadeOut("slow");
});
$(document).ready(function () {
$(document).ajaxStart(function () {
$("#loader").show();
}).ajaxStop(function () {
$("#loader").hide();
});
});
</script>
&#13;
我在索引/主页的正文中定义了以下标记,
<div id="loader"></div>
我的配置文件中的路由映射:(我不认为这里存在问题,因为我可以看到透明样式但不能看到定义的图像(preloader_8.gif)。)
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/", // URL with parameters
new { controller = "Home", action = "Index"} // Parameter defaults
);
}