Скроллтоп JS iFrame Desktop работает нормально, но на iOS это игнорируется - PullRequest
0 голосов
/ 31 марта 2019

Мой первый вопрос, так что будьте добры :) Я создал небольшую бесконечную прокрутку для википедии, которая хорошо работает на настольном компьютере, но я не могу заставить ее работать на iOS. Я пробовал кучу разных кусочков кода из интернета, но все не получилось, так что это мой последний шанс. Код небольшой и опубликован на codepen. Кажется, основная причина связана с iframe, который codepen оборачивает код, потому что, если я запускаю его в режиме отладки codepen, он работает нормально (но эта ссылка истекает в соответствии с дизайном codepen)

Я пытался установить setInterval, но scrollTop внутри iFrame всегда возвращает 0 на iOS (как уже упоминалось, при отладке codepen, поэтому без переноса iframe все работает нормально). Точно так же на рабочем столе работает даже внутри iframe

код на коде https://codepen.io/firecodergithub/full/xexOeX Это соответствующий раздел кода

  $(window)
  .data("ajaxisready", true)
  .scroll(function(e) {
    if ($(window).data("ajaxisready") === false) return;
    var scrTop=$(window).scrollTop();

    if (( scrTop>= $(document).height() - $(window).height() - 60 ) ) {
      //show the next 10 results on scrolling
      $(window).data("ajaxisready", false);
      next10results();
    }
  });

Все, что мне нужно, это чтобы scrollTop фактически возвращал не 0, как на рабочем столе

Чтобы воспроизвести, просто прокрутите до конца страницы на рабочем столе, и он загрузит следующие 10 записей (сделайте то же самое на iOS, и ничего не произойдет). Не пробовал на Android

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