Добавление события jQuery mobile swipe
У меня есть список, и то, что я пытаюсь сделать, - это добавить в ссылки случайное событие. Например, если пользователь просматривает первую ссылку, она переходит на эту страницу. Возможно ли это с элементами списка. Я попробовал div, href, a, li, ul, но все равно не предупредил. Он работает с телом. Благодаря
<div>
<ul data-role="listview" data-inset="true">
<li class="rqstpage"><a href="./requests.php">Requests</a></li>
<li><a href="./speakers.php" data-transition="pop">Control Panel</a></li>
<li><a href="./schedule.html">Schedule</a></li>
<li><a href="./information.html">Information</a></li>
</ul>
</div>
<script>
$("div ul li.rqstpage").bind('swipe',function(event, ui){
$.mobile.changePage("requests.php", "slide");
});
</script>
Ответы
Ответ 1
Живой пример:
JS:
$("#listitem").swiperight(function() {
$.mobile.changePage("#page1");
});
HTML:
<div data-role="page" id="home">
<div data-role="content">
<p>
<ul data-role="listview" data-inset="true" data-theme="c">
<li id="listitem">Swipe Right to view Page 1</li>
</ul>
</p>
</div>
</div>
<div data-role="page" id="page1">
<div data-role="content">
<ul data-role="listview" data-inset="true" data-theme="c">
<li data-role="list-divider">Navigation</li>
<li><a href="#home">Back to the Home Page</a></li>
</ul>
<p>
Yeah!<br />You Swiped Right to view Page 1
</p>
</div>
</div>
по теме:
Ответ 2
Вы пытались использовать привязку с помощью live()
?
UPDATE: .live()
будет устаревшим и правильное использование .on()
Он прикрепляет обработчик к событию для всех текущих элементов соответствия , а также тех, которые могут совпадать позже.
pageCreate() {
$(parent).on('swipe', 'li.rqstpage', function() {
$.mobile.changePage("requests.php", "slide");
}
}
Считаете ли вы эту библиотеку для gestures?
Ответ 3
работает ли это, если вы привязываете его непосредственно к элементу управления, например:
pageCreate() {
$("li.rqstpage").swipe() {
$.mobile.changePage("requests.php", "slide");
}
}
Ответ 4
Если вы хотите, чтобы страница скользнула в естественном направлении, которую пользователь проделывает, сделайте следующее:
// For a left swipe: page slides from right to left
$('#listitem').on('swipeleft', function() {
$.mobile.changePage('#page-to-left', { transition: slide});
});
// For a right swipe: page slides from left to right (add "reverse: true")
$('#listitem').on('swiperight', function() {
$.mobile.changePage('#page-to-right', { transition: slide, reverse: true});
});
Ответ 5
если вы хотите перейти, вам нужно указать, что вы хотите перейти также, например
$.mobile.changePage('#page1', { transition: 'flip' });