2008-11-03 20 views
3

我有一個我已經開發的網站,它使得Javascript得到了體面的使用,並且在一些事情上最少使用了AJAX。該網站在iPhone上運行良好,直到我添加了function to create an HttpRequest handle,此時iPhone上的所有Javascript現在都以靜默方式失敗。所以,我有幾個問題。在iPhone上的AJAX?

(1)似乎AJAX在iPhone上完全不起作用。這是真的?如果沒有,我該如何修改HttpRequest創建函數來容納iPhone? (2)如果在iPhone上AJAX確實是不可能的,有沒有辦法修改給定的函數,使它在iPhone上優雅地失敗,並且頁面上的其他腳本仍然會起作用? (3)如果不是這樣,那麼我需要做什麼服務器端(甚至有可能?)檢測到iPhone,這樣我可以在iPhone請求頁面時完全刪除AJAX代碼?

如何使用CSS檢測iPhone作爲顯示設備,並採取相應措施,這與您在Opera Show中使用的功能類似。當然,這不能解決AJAX問題,但它會很整潔。^_^

感謝您的回答。我的幾位客戶經常從iPhone訪問網站,我希望我的網頁能夠儘可能多地工作,所以我願意修改我的代碼,儘管我沒有一個可以測試的代碼。

回答

11

。當然,iPhone支持AJAX,檢查出http://developer.apple.com/webapps/資源的開發iPhone的webapps一堆。我會推薦使用框架(例如jQueryiUI(用於UI)),而不是滾動自己的ajax功能,它已經解決了許多瀏覽器怪癖並進行了優化。

1

沒有理由AJAX無法在iPhone上運行,許多谷歌的網站/ facebook等都非常好地使用它。

您的AJAX在Safari/Mac中工作嗎?這是您在非移動環境中最接近的近似值。

我會想象有一個在你的JavaScript某處一些bug,你只是沒有察覺

+0

是的,我經常在Safari for Windows上測試它。我沒有(也不想)Mac來測試它。也許它只是別的我正在做的... – 2008-11-03 23:27:45

1

在設備上調試JavaScript錯誤的一個有用資源是調試控制檯。它應該報告任何解析錯誤,也可以用來記錄消息和異常。您可以從設置> Safari>開發人員將其打開(滾動至底部)。

0

AAX完美的作品在iPhone上,完美地至少我的iPhone(3G)