1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/Lili_ComeOn-L-AJAX

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

##Текущий проект по умолчанию является примером 1. Если вам нужно использовать пример 0, пожалуйста, импортируйте call.js вместо callMobile.js ##

call.js решает проблему совместимости браузера с междоменными запросами ajax

                ie8, 9  ajax  междоменный

Описание проблемы

avalon.ajax обрабатывает только междоменные запросы get для ie10 и ниже через (jsonp), не совместим с post междоменными запросами для ie10 и ниже. Поэтому необходимо решить проблему, связанную с тем, что avalon.ajax не поддерживает междоменные post-запросы в ie8 и 9.

Способ использования

Используйте метод $.call() для реализации запроса ajax. Пример:

    $.call({
                //get или post запрос
                type: 'post',
                //предполагается, что уже настроен глобальный apiURL, например: var apiURL = 'https://api.tansuyun.cn/index.php?i=';
                i:5,
                //данные отправки
                data: {"Number": 6},
                //функция обратного вызова при успешном запросе
                success: function (data) {
                       ...do something
                }
            });

Общая идея реализации

Сначала определите версию браузера. Если это ie8 или 9, используйте XDomainRequest для выполнения междоменного запроса. В противном случае автоматически передайте параметры в avalon.ajax для вызова.

В этом файле основное внимание уделяется реализации междоменных запросов для ie8 и ie9.

Проблемы, с которыми столкнулись

  • Проблема: объекты tip и door и т. д., которые находятся в файле, добавляются статически через index.html, поэтому при использовании метода require для определения этих объектов возникает ошибка (эти объекты не определены).

    Решение: не используйте метод require для определения и возврата объекта, а непосредственно определите его как объект. Пример:

      var tip = avalon.define({
                .....
           });
     //или так определить
      var tip= {
                .....
           };
  • Проблема: в ie8ie9 появляется проблема с неопределённым avalon.router.

    ** Решение**: после импорта mmRequest.js добавьте if lt IE 9 Пример:

      <!--[if lt IE 9]>
      <script src="./js/mmRouter.js"></script>
      <![endif]-->

Примеры

  • Пример 0: ** Сцена использования**: совместим с ie6+ необходимо импортировать avalon.js ** Способ использования**:

          $.call({
    
          });

    ** Примечание**: проверьте index, убедитесь, что вы импортировали call.js

  • Пример 1: ** Сцена использования**: совместим с ie10+ если используется на мобильном устройстве, то необходимо импортировать avalon.mobile.js ** Способ использования**:

             call({
    
             });
    ** *Примечание***: проверьте index, убедитесь, что вы импортировали callMobile.js

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Совместимость AJAX-запросов с различными браузерами на основе Availon. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/Lili_ComeOn-L-AJAX.git
git@api.gitlife.ru:oschina-mirror/Lili_ComeOn-L-AJAX.git
oschina-mirror
Lili_ComeOn-L-AJAX
Lili_ComeOn-L-AJAX
master