我使用MVC 4开发了一个销售点系统。在Windows和Mac上,响应速度和加载时间是瞬间的,但在iPad上,加载页面或执行添加商品等操作需要8-13秒。为了提高Web应用程序的速度,我在IIS中启用了压缩,并对所有JavaScript文件进行了缩小处理。我还使用了绑定来将以下.js文件捆绑在一起,据说可以改善页面的加载:
- jquery-1.8.2.min.js
- knockout-2.2.0.js
- jquery.easing.1.3.js
- b.popup.min.js(仅用于显示模态弹出窗口,大小为6KB)
我在页面上使用的其他JavaScript文件大小在5KB到15KB之间。尽管经过这些处理,应用程序似乎快了几秒钟,但仍然需要不可接受的长时间(8-10秒)。
是否有人在iPad上遇到类似的性能问题,如何解决?还有什么其他方法可以提高性能?
我正在使用Windows Server 2003和IIS 6.0。
这是我的绑定注册代码:
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-1.8.2.min.js",
"~/Scripts/jquery.easing.1.3.js",
"~/Scripts/knockout-2.2.0.js",
"~/Scripts/common/common.min.js",
"~/Scripts/popup.min.js"
));
bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/site.css"));
BundleTable.EnableOptimizations = true;
}
这是我在主页面上调用它的地方:
@using System.Configuration
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<meta name="apple-mobile-web-app-capable" content="yes">
<title>Prestige SSC</title>
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
@Styles.Render("~/Content/css")
<script type="text/javascript">
var screenRefreshTime = '@ConfigurationManager.AppSettings["ScreenRefreshTime"].ToString()';
screenRefreshTime = parseInt(screenRefreshTime);
</script>
</head>
<body>
@RenderBody()
</body>
</html>
screenRefreshTime = parseInt(screenRefreshTime);
你也在iPad上刷新屏幕吗?这可能会导致问题。 - Bart Calixto