2014-11-22 49 views
-2

我包括在2個HTML文件頭部相同的JavaScript文件:調用Javascript語言,不同的HTML文件再次功能

<script src="js/app.js"></script> 

和HTML第1頁然後鏈接到HTML第2頁。但是,當您按照第2頁的超鏈接時,JavaScript文件中的代碼在頁面2加載時不會再次調用。即使當我嘗試在html文件2的頭部或主體中添加一段代碼以調用JS文件中的函數時,它也不會執行。

我做錯了什麼?

編輯:繼承人的代碼 http://jsfiddle.net/dL6gpveL/1/

EDIT2:所以一切都正常工作時,我沒有jQuery Mobile的包括在內。任何想法爲什麼會發生?它的版本1.4.5

編輯3:對不起,我應該說我是第一次使用jQuery的移動。

+1

這是不可能的。當您移動到新頁面時,瀏覽器引擎會重新整理整個網頁並以與之前所做的相同的方式執行它(忽略緩存概念) – mehulmpt 2014-11-22 16:41:54

+0

您可以發佈您的代碼嗎? – 2014-11-22 16:42:43

+0

您是否使用AJAX加載page2? – 2014-11-22 16:46:56

回答

0

編輯:我試過再現你的問題沒有任何運氣。加載JavaScript文件和執行函數沒有問題。

我的設置:

"Folder/index.html" 
"Folder/crews.html" 
"Folder/js/app.js" 
"Folder/js/jquery-1.11.1.min.js" 

是什麼嘗試加載.js文件時,您的瀏覽器控制檯說?

編輯: 我注意到你正試圖抓取「js/jquery.mobile-1.4.5.min.map」,但你的jquery移動文件在「js/jquery.mobile-1.4.5.min .js文件」。這可能與它有關嗎?

編輯:jquery.mobile-1.4.5.min.map上的404可能不相關。我的錯。

但看的所有網頁的加載方式後,我一直困惑不已,我做了一些環顧四周。我發現這個職位有關jQuery Mobile的: https://stackoverflow.com/a/17406387/3209951

嘗試在帖子中提到的3個步驟,看看如果有幫助。

另請參閱該文章中的兩個鏈接,瞭解更多關於jquery mobile的信息。

+0

是的,我再次包括它。 – Lukesmith 2014-11-22 17:05:55

+0

Page2:http://jsfiddle.net/w5kxomvk/爲了簡單起見,我將它與page1完全相同,但將不同的值傳遞給該函數。 – Lukesmith 2014-11-22 17:09:56

+0

另外,請注意我註釋掉了document.ready函數,當它處於此狀態時,我無法調用函數。這可能與它有關嗎? – Lukesmith 2014-11-22 17:11:03

0

所以事實證明,問題是,當您使用JQuery Mobile時,頭部中的東西不會再次加載。只有「頁面」div中的代碼。所以你必須在那裏調用JS函數,它工作正常。