2016-10-23 5 views
0

Я использую следующие:JQuery мобильный прокрутка не работает на первой странице дисплея

Cordova 6.3.1 JQuery 1.11.1 JQuery UI 1.11.2 JQuery Mobile 1.4.5 iScroll 4,2 JQuery Mobile iScrollview v1.3.7

Когда мой элемент li содержит только элементы привязки, все работает нормально. Я получаю полосу прокрутки и могу прокручивать ее в нижней части списка.

Когда элемент li содержит смесь элементов img и элементов привязки (не каждый якорь имеет связанное с ним изображение), я получаю полосу прокрутки, но я не могу прокрутить ее до нижней части списка, но ТОЛЬКО в первый раз отображается страница.

Если я уйду от страницы и вернусь, все будет хорошо.

Когда элемент li содержит равное количество элементов img и anchor, сначала я не получаю полосу прокрутки, и прокрутка не работает вообще, но ТОЛЬКО при первом отображении страницы.

Если я уйду и вернусь, все будет хорошо.

Я подозреваю, что у него проблемы с вычислением размера элемента img, но я не уверен, как его исправить.

Вот код для создания элементов списка и добавить их в строку:

htmlToAppend = "<li>" + 
      "<img id="+ i + " src=\""+imageUrl+"\" ></img><br>" + 
      "<a id=" + i + " " + cssColor + ">" + caption + '<br><br><br><br><br></a>" + 
     "</li>"; 

Каждая строка htmlToAppend получает сцепляются с большой большой строки я добавляю:

contentForDisplay.concat(htmlToAppend); 

Вот стандартный iscroll/iscrollview Мне нужно сделать:

$('#unorderedlist').append(contentForDisplay);  
$('#some_div').trigger('create'); 
$("#scrollable_list").iscrollview("refresh"); 

Я подозреваю, что проблема i s мой код не знает, как рассчитать размер изображения до второго раза, когда я показываю список.

Возможно, я ошибаюсь.

В любом случае, вы столкнулись с чем-то подобным? Если да, то что вы сделали для ее решения? Если бы вы были мной, что бы вы попробовали?

Я вижу, что есть iScroll5 - это проще в использовании?

Есть ли другие прокрутки corova + jQuery?

ответ

0

Когда вы пишете приложение Кордовы, самое главное, что вы пишете правильные html и css. Правильное означает, что у вас есть чистая и простая структура html, а не пустыня div.

например: Удалить свои br-метки и использовать запас или прокладку.

jQuery и jQueryMobile - хорошие библиотеки, но если вы используете их неправильно, это лучший способ замедлить работу приложения. Я использую их много, но только для вещей, которые я сам не могу написать проще.

Я выброшу iScroll и jQueryMobile и начну снова с вашего списка. У меня есть списки с сотнями записей, и они прокручиваются очень гладко.

+0

Есть ли какая-то форма для прокрутки Кордовы, о которой я не знаю? Я бы хотел упростить эту вещь. – user1126515

+0

Нет, нет. Кордова использует Webviews, так что это всего лишь html и css. Если вам не нужны специальные события, нет необходимости в дополнительных библиотеках. – Joerg

+0

отличная от читабельности - почему правильный html важен? будет ли кордоя уходить в сорняки с неправильным html? – user1126515

 Смежные вопросы

  • Нет связанных вопросов^_^