2013-03-20 63 views
12

我看到這個已經被問過,但我沒有看到任何解決方案:失敗,錯誤加載網頁:框架加載中斷

所以即時通訊使用科爾多瓦2.5在iOS 6.1.2

建立一個iPad應用程序我app.coffee:

jQuery -> 
    class window.AppRouter extends Backbone.Router 
     routes: { 
      '': 'index', 
      ':parent/:child/': 'childView', 
      ':id/': 'detailView', 
     }, 

     index: => 
      $("#navbar .title").text("Flight Centre's Choices") 
      view = new fc.main.View 
      view.render() 

     childView: (parent, child) => 
      view = new fc.main.View(parent:parent, child:child) 
      view.render() 

     detailView: (id) => 
      view = new fc.main.Detail(id:id) 
      view.render() 

    window.app = new AppRouter(); 
    Backbone.history.start(); 

的第一個索引視圖成功地加載和顯示,因爲它應該

現在點擊上可以說,開放childView的環節之一,它加載失敗頁:

2013-03-20 16:56:13.684 Flight[1158:907] Resetting plugins due to page load. 
2013-03-20 16:56:13.689 Flight[1158:907] Resetting plugins due to page load. 
2013-03-20 16:56:13.694 Flight[1158:907] Failed to load webpage with error: Frame load interrupted 

用戶點擊鏈接看起來像這樣:

/#/foo/bar/ 

一切正常在我的Mac上的Chrome瀏覽器。

我不知道這裏發生了什麼!

回答

33

該死的分配時間,答案是如此愚蠢和簡單。

而不必在HTML中的鏈接爲:

/#/foo/bar/ 

這應該只是

#/foo/bar/ 

這是有道理的,與領先/頁面將重新加載,而這就是爲什麼我那個錯誤。

希望它可以幫助別人

+3

是的解決這個問題,有同樣的問題與PhoneGap的3和AngularJS ......感謝上帝,谷歌! – 2013-12-06 00:33:17

+0

對於那些以後可能會出現的問題,這通過ng-href進行連接時沒有*解決我的問題。在ng-click中通過方法調用調用$ location.path('/ route_name'),但是... Curiouser和curiouser ... – ericpeters0n 2014-05-07 22:16:25

+0

在我的情況下,我已經在所有鏈接中使用#/。即使我嘗試了#/和/#/,唯一有效的工作是將鏈接保持原樣並刪除 Bernat 2017-02-15 16:02:14

0

我可以通過使用window.location.hash