2012-09-22 121 views
0

我正在開發一個移動網站並使用jQuery。爲什麼我必須刷新我的頁面才能使用javascript函數?

當我加載某個頁面並單擊所需的按鈕時,代碼不會執行,直到我刷新頁面。爲什麼是這樣 ?

以下是我有它

script.js 

$(document).ready(function() 
{ 
    $("#user-save").click(
     function(e) 
     { 
     alert(/clickity-click/); 
     }); 
}); 

page.php 

<html> 
    <head> 
     <!-- Other jQuery files here --> 
     <script src="script.js"></script> 
    </head> 
<body> 
    <div id="user-save" data-role="button">Click me like a boss</div> 
</body> 
</html> 
+0

檢查您瀏覽器上的彈出式窗口攔截器。 –

+0

即使在Internet Explorer 7上,行爲也是如此。 IE7默認允許彈出窗口。 – TheRealChx101

+0

查看下面的答案。 –

回答

0

改動這些行:

  1. <script type='text/javascript' src="script.js"></script>
  2. alert('clickity-click');
+0

我認爲這並不重要。 :) – TheRealChx101

+0

在IE8上檢查這個小提琴http://jsfiddle.net/87MMJ/,它工作正常。 –

+0

等一下。是因爲這個頁面是從另一個頁面發起的嗎? – TheRealChx101

3

我花了幾個小時改寫這是有這個問題,一個頁面上的代碼,才意識到問題涉及到鏈接/前一頁。

錨標籤和鏈接鏈接/上頁,導致在那裏你想確保$(document).ready(init)將運行頁面的人,需要有包括data-ajax="false"屬性是這樣的:

<a href="yourpage.html" data-ajax="false"> 

這將確保JQuery Mobile不會期望您使用AJAX動態加載內容,而實際上您正在導航到不同的/新頁面。換句話說,如果加載不同的/新頁面,JQuery Mobile將只運行$(document).ready()

+0

謝謝。這個問題已經被@GreyBeardedGeek – TheRealChx101

相關問題