AJAX на iPhone? - PullRequest
       14

AJAX на iPhone?

3 голосов
/ 04 ноября 2008

У меня есть сайт, который я разработал, который прилично использует Javascript и минимально использует AJAX для нескольких вещей. Сайт отлично работал на iPhone, пока я не добавил функцию для создания дескриптора HttpRequest , после чего весь Javascript на iPhone теперь молча завершается сбоем. Итак, у меня есть несколько вопросов.

(1) Кажется, что AJAX вообще не работает на iPhone. Это правда? Если нет, как я могу изменить функцию создания HttpRequest для размещения iPhone?

(2) Если AJAX действительно невозможен на iPhone, есть ли способ, которым я могу изменить данную функцию таким образом, чтобы она корректно провалилась на iPhone, и другие скрипты на странице все еще работали?

(3) Если это не так, что мне нужно сделать, чтобы серверная часть (и возможно ли это вообще?) Обнаруживала iPhone, чтобы я мог полностью удалить код AJAX, когда iPhone запрашивает страницу?

Что бы также работало довольно хорошо - это возможность использовать CSS для определения iPhone как устройства отображения и действовать соответственно, аналогично тому, что вы используете в Opera Show. Конечно, это не решит проблему с AJAX, но это будет здорово. ^ _ ^

Спасибо за ответы. Некоторые из моих клиентов регулярно заходят на сайт с iPhone, и я хочу, чтобы мои страницы работали настолько, насколько это возможно, поэтому я готов изменить свой код для него, даже если у меня нет такого, чтобы проверять его.

Ответы [ 6 ]

11 голосов
/ 04 ноября 2008

Конечно, iPhone поддерживает ajax, проверьте http://developer.apple.com/webapps/, чтобы получить кучу ресурсов для разработки веб-приложений для iPhone. Я бы порекомендовал использовать фреймворк (такой как jQuery или iUI (для пользовательского интерфейса)) вместо того, чтобы использовать собственную функциональность AJAX, он уже устранит многие странности браузера и будет оптимизировано.

1 голос
/ 04 ноября 2008

Одним из полезных ресурсов для устранения ошибок JavaScript, подобных этой, на устройстве является консоль отладки. Он должен сообщать о любых ошибках синтаксического анализа, а также может использоваться для регистрации сообщений и исключений. Вы можете включить его в меню «Настройки»> «Safari»> «Разработчик» (прокрутите вниз).

1 голос
/ 04 ноября 2008

Нет причин, по которым AJAX не будет работать на iPhone, многие сайты Google / Facebook и т. Д. Используют его на отлично.

Работает ли ваш AJAX в Safari / Mac? Это самое близкое приближение, которое вы получите в немобильной среде.

Я бы предположил, что где-то в вашем javascript есть какая-то ошибка, которую вы просто не замечаете

0 голосов
/ 27 декабря 2009

Недавно я столкнулся с той же проблемой при использовании jQuery, но это было поведение Safari Mobile. Может и в твоем случае тоже.

Сократить URL-адрес ajax от "http://the/full/url" до" / просто / относительно / относительно / корня / части "

Кстати, именно @pillsbur изначально нашел решение здесь:

http://www.webmasterworld.com/javascript/3382262.htm

0 голосов
/ 07 декабря 2008

AJAX работает очень хорошо. Если вам нужна небольшая, простая в использовании оболочка для AJAX, вы должны проверить https://sourceforge.net/projects/quickconnect/. Она содержит оболочку с именем ServerAccessObject, найденную в файле ServerAccessObject.js.

Блог разработчиков для QuickConnectiPhone находится по адресу http://tetontech.wordpress.com

0 голосов
/ 20 ноября 2008

Aax отлично работает на iPhone, даже наши самые продвинутые вещи, такие как Ajax Calendar Starter-Kit , работают безупречно по крайней мере на моем iPhone (3G)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...