Opera Mini Jquery AJAX не загружается

Я занимаюсь разработкой сайта для мобильных устройств. Однако по некоторым причинам вызовы AJAX не работают в Opera Mini. Например - один такой запрос на загрузку большего количества контента в конце страницы (70%)

$(document).scroll(function (e) {
    if (processing) return false;
    if ($(window).scrollTop() >= ($(document).height() - $(window).height()) * 0.7) {
        processing = true;
        $.ajax({
            type: "GET",
            url: "/ajax/popup-loadmore-test.php",
            data: {
                entityid: $("#e").attr("data-id"),
                version: version
            }
        }).done(function (msg) {
            console.log("Data emitted: " + msg);
            $('#f').append(msg);
            version++;
            processing = false;
        });
    }
});

Он работает везде, на рабочем столе, в браузере UC, браузере Android и т. д., но не в Opera Mini.

Пожалуйста, помогите, если AJAX написан как-то по-другому для Opera Mini. Я много читал о том, как Opera Mini отображает страницу в браузере. В моей пользовательской базе почти 50% пользователей Opera, так что это большая проблема для меня. Спасибо.


person user609306    schedule 28.11.2014    source источник


Ответы (2)


В Opera Mini нет события scroll.

Неподдерживаемые события DOM для Opera Mini:

  • контекстное меню
  • двойной клик
  • ошибка
  • нажатие клавиши
  • нажатие клавиши
  • ключ
  • движение мыши
  • мышьэнтер
  • мышиный лист
  • мышь
  • колесико мыши
  • изменить размер
  • прокрутить
  • touchcancel
  • касание
  • касание
  • сенсорный запуск

Подробнее как работает Opera Mini.

person Pinal    schedule 04.12.2014

поскольку событие scroll не поддерживается оперой мини, используйте кнопку, поскольку загрузите больше и добавьте событие onClick к этой кнопке, опера мини поддерживает событие onClick

<div id="loadmore" onClick="loadmore()">More</div>

function loadmore()
{
   $.ajax({
            type: "GET",
            url: "/ajax/popup-loadmore-test.php",
            data: {
                entityid: $("#e").attr("data-id"),
                version: version
            }
        }).done(function (msg) {
            console.log("Data emitted: " + msg);
            $('#f').append(msg);
            version++;
            processing = false;
        });
}
person Prathamesh Rasam    schedule 03.01.2015