jQuery Mobile頁面跳轉後未載入外部JS原因分析及解決

liongis發表於2013-08-22

在使用jQuery Mobile進行Web開發中,當頁面跳轉時(pageA => pageB),在pageB中引用的JS並未成功執行。因為,JQM併為將整個頁面載入到當前的dom中,僅將data-role="page"元素加入當前的dom中。

因此,在<head>中引入的外部JS檔案,以及<page>標籤外的JS均不能正常執行,重新整理頁面後方可載入成功。

鑑於JQM這個特性不太可能主動更改,可以用兩種方法來解決: 一是在index頁面中,註冊所有需要使用到的外部JS檔案,或者使用母版頁面來統一; 二是將頁面內部JS寫在data-role="page"標籤下,這樣無論頁面怎樣跳轉,均可以執行。

相關文章