簡體   English   中英

jQuery Mobile 1.4.5似乎未在ipad上調用javascript

[英]JQuery Mobile 1.4.5 does not seem to invoke javascript on ipad

使用JQuery mobile 1.4.5https://jquerymobile.com/

具有諷刺意味的是,一切都可以在桌面瀏覽器上運行,但是在iPad上進行測試時,我似乎無法正常工作...

我的精簡頁面(HTML)包含以下內容:

<div data-role="content">
 <script src="test.js"></script>    
 <script>
  $( document ).on( 'pagecreate', function( event ) { do_something(); });
 </script>
</div>

文件“ test.js”包含以下代碼:

function do_something() {

   alert('here in do_something()');

}

在iPad上進行測試時,我得到的只是一個帶有“旋轉彗星”的灰色圓圈,該圓圈在圓圈中旋轉,頁面甚至從未呈現(是的,我嘗試過重新啟動iPad,清除瀏覽器歷史記錄/數據等)。

在所有其他瀏覽器上,我得到警報。

最終,我試圖將google map以及需要操作各種DOM元素以及javascript的javascript加載到頁面中-我可以做到並且正在所有其他瀏覽器上工作-似乎似乎無法在iPad上進行測試時,任何事情都可以工作(我不知道如何通過iPad Safari查看源消息或控制台消息,這使調試成為噩夢)。

任何的意見都將會有幫助。

提前致謝。

首先,您錯過了一些重要信息,例如台式機上是否正在運行“所有其他瀏覽器”,或者我們是否在談論其他移動設備? 這是非常重要的。

如您所見,微調器意味着將加載jQuery Mobile和jQuery。

如果它們已在您的台式計算機上成功運行,則可以檢查以下內容:

  • 確保沒有任何內容在本地主機上運行或從本地主機運行。 這將在台式計算機上正常工作,但是如果您嘗試在任何其他設備上對其進行測試,則它將失敗。
  • 確保您在jQM應用程序中未使用絕對路徑,這在任何遠程設備上也會失敗。 我想可能是類似的情況,因為jQM無法顯示第一頁
  • 您將需要使用遠程調試功能。 當您使用iPad時,我再次假定您擁有Mac。 請遵循此教程: https : //appletoolbox.com/2014/05/use-web-inspector-debug-mobile-safari/,因為它是唯一的防呆方法,可在其中發現問題所在。 不幸的是,如果您使用的是Windows計算機,則需要使用Chrome和Android設備。
  • 還有一種可能,您的某些* .js內容是從localhost或iPad無法使用的其他來源加載的。 也可能是這種情況,因為您上面提到的警報未在iPad上觸發。 這意味着已經出現了一些主要的JavaScript,從而阻止了其他JavaScript內容的加載。
  • 在這種情況下,您還可以使用另一種萬無一失的方法來幫助我。 將代碼修剪到最低限度,即使這意味着您需要刪除大部分HTML內容和JavaScript。 對它進行測試(如果可行),開始包括已刪除的內容。 首先包括遠程JavaScript內容,CSS等。 然后,如果仍然有效,請開始包含實際的HTML和代碼。 遲早您會偶然發現有問題的代碼,缺少的內容或未加載到iPad的內容。

感謝所有提供了一些見解的人...

原來,這是一個外部的javascript文件,其中包含try / catch塊,如下所示:

try {
   // code
}
catch {
   // code
}

更改為:

try {
   // code
}
catch(err) {
   // code
}

...進行更改后,所有測試都通過了!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM