#listview #refresh #jquery-mobile
#просмотр списка #обновить #jquery-мобильный
Вопрос:
У меня есть список, который я отображаю только со значками и заголовком — без форматирования JQM. Если ширина экрана меньше 320 пикселей, я хочу преобразовать список в JQM <ul data-role="listview">
список.
Я могу добавить атрибут с помощью Jquery, но когда я вызываю $(‘.menuList’).listview(‘обновить’); Я получаю следующую ошибку:
не удается вызвать методы в listview до инициализации; предпринята попытка вызвать метод ‘refresh’
Есть какие-либо подсказки относительно того, что я делаю неправильно?
Спасибо!
Часто
HTML:
<ul class="menuList">
<li>
<div>
<a href="l" data-transition="slide" rel="external" class="iconViewport icon">
<span class="menuTitle">GoHere</span>
<span class="pusher">111</span>
</a>
</div>
</li>
</ul>
Jquery
function enhanceMobile ()
{
$('.menuList').attr('data-role', 'listview');
$('.menuList').listview('refresh');
}
Ответ №1:
Вы не можете вызвать .listview('refresh');
элемент, который еще не является listview.
Если вы только что добавили data-role
, вам нужно вызвать .listview();
который вызывает конструктор виджета (в то время как .listview('refresh');
вызывает метод обновления виджета)
[Я уже отправил вам это по электронной почте, но оно должно быть здесь 🙂 ]