2015-11-26 3 views
0

Я использую jQuery click событие для переключения моей навигационной панели. Код, я использую что-то вроде этого:jQuery click альтернатива для мобильных устройств

$('.nav-button').on('click', function() { 

    $('.navigation, .nav-button').toggleClass('show-nav'); 

}); 

Где .nav-button является div. Все в порядке в Android-версии Chrome, но Firefox Android ничего не делает при касании <div class="nav-button"></div>

Есть ли какое-либо решение для jQuery click для сенсорных устройств?

+1

посмотрите на этой [нить] (http://stackoverflow.com/questions/11397028/document-click-function-for-touch-device) ;-) – Chris

+0

@ Крис благодарит эту работу :) –

ответ

0

Какой тип jQuery вы используете? Я рекомендую использовать библиотеку jQuery Mobile. Его почти то же самое, что и jQuery. У них есть события, характерные для сенсорных устройств в jQuery Mobile.

например

$("p").on("tap",function(){ 
 
    $(this).hide(); 
 
});

$("p").on("taphold",function(){ 
 
    $(this).hide(); 
 
});

$("p").on("swipeleft",function(){ 
 
    alert("You swiped left!"); 
 
});

+0

Должен ли я установить jQuery mobile отдельно с обычным jQuery? –

+0

Вы можете поместить вторую ссылку на файл jQuery Mobile в свой html-файл –

0

я нашел другую нить на эту тему на StackOverflow: jQuery click event not working in mobile browsers

Как мой предыдущий оратор упомянул, вы можете попробовать его с JQuery Mobile. Существует что-то похож на обработчик событий нажмите который называется vclick в JQuery Mobile:

Вот небольшой пример того, как это выглядит:

$(document).ready(function(){ 
    $('.nav-button').vclick(function() { 
     $('.navigation, .nav-button').toggleClass('show-nav'); 
    }); 
}); 
1

Используйте это вместо:

$('.nav-button').on('click touchstart', function() { 

    $('.navigation, .nav-button').toggleClass('show-nav'); 

}); 
Смежные вопросы