我的桌面应用程序有一个表格,其中包含使用JQmobile格式化制作的粗略页面(因为它也用于移动设备)。 当我为此过程调用任何crud页面时,我加载JQmobile.js文件。问题是,当我尝试调用其他桌面页面时,JQmobile.js仍然被加载,因此所有后续桌面处理请求都以JQmobile格式运行。 如何加载此JQmobile.js文件以仅进行适当的处理,然后在其余的后续桌面处理请求中将其删除?
to be more specific, I have a 2 bundles like this:
bundles.Add(new ScriptBundle("~/bundles/Mbsa_JSBundle").Include(
"~/Scripts/mbsa_Mobile.js",
"~/ScriptJQMobile-145/jquery.mobile-1.4.5/jquery.mobile-1.4.5.js"
));
bundles.Add(new StyleBundle("~/Content/Mbsa_CSSBundle").Include(
"~/Content/mbsa_Mobile.css",
"~/Content/MbsaMobileStandardCSS/jquery.mobile.icons.min.css",
"~/ScriptJQMobile-145/jquery.mobile-1.4.5/jquery.mobile.structure-`1.4.5.css",`
"~/Content/MbsaMobileStandardCSS/MbsaMobileStandard.css"
));
使用给我答案的用户示例。
我很乐意做这样的事情。 (但这是一个脚本标记within another script tag).
<body id="pagetag"></body>
<script>
if($('body').is('#pagetag')){
if($('body').is('#pagetag')){
@Styles.Render("~/Content/Mbsa_CSSBundle")
@Scripts.Render("~/bundles/Mbsa_JSBundle")
}
})
</script>
// This works ok, but as stated, the scripts remain even
// when a non jqmobile formated page is requested.
@if ((bool)Session["Mbsa-IsMobile"] == false)
{
@Styles.Render("~/Content/Mbsa_DMCSSBundle")
@Scripts.Render("~/bundles/Mbsa_DMJSBundle")
}
一旦我进入非jqmobile格式页面,我该如何删除这些包?
答案 0 :(得分:0)
将id或类添加到body
<body id="pagetag">
然后添加一个脚本
$(function(){
if($('body').is('#pagetag')){
// add whatever scripts you need
}
});