我開發了一個使用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