我开发了一个使用MVC 4的销售点系统。Windows和Mac上的响应和加载时间是即时的,但在iPad上需要8-13秒来加载页面或执行诸如将物品添加到篮子的动作。为了提高Web应用程序我启用IIS中的压缩速度和精缩我所有的Java脚本文件我也用捆绑捆绑以下.js文件一起据称提高了页面加载,以及:MVC 4网站在iPad上很慢
- jQuery的1.8 .2.min.js
- 敲除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>
它可能是网络连接。所有三个设备是否使用相同的网络?在我的办公室里,无线设备要慢得多,所以将我的电脑与我的iPad进行比较没有任何意义。你在iPad上试过Chrome吗?它感觉*就像使用Chrome over Safari获得更好的性能。 – 2014-11-14 16:15:38
我试过在Windows笔记本电脑,Mac书和三星平板电脑上运行Windows 8,使用与iPad相同的Wi-Fi,并且所有三种都非常快。我只是因为某些原因在iPad上出现性能问题。尝试在Chrome和Safari上访问该网站,他们都很慢。 – 2014-11-17 08:34:36
请指定您验证的iPad生成版本。您的网站在所有iPad版本上运行缓慢吗?问题的原因可以是客户端数据绑定(因为我看到你使用Knockout)。所以,我想你应该看看这个方向。 – 2014-11-17 12:58:54