Для мобильных устройств событие нажатия переключается с событием касания. С помощью JQuery вы можете добавить несколько событий, используя .on (), но если вы добавите как касание, так и щелчок, оба события сработают, что приведет к нескольким триггерам. Лучше использовать переключатель, как показано ниже:
var eventType = (/Android|webOS|iPhone|iPad|iPod|BlackBerry|Windows Phone/i.test(navigator.userAgent) ) ? 'touchend' : 'click';
$('#item').on(eventType, function(e) {
//do something
});
Или я также использую это как общий переключатель для сенсорных устройств:
var isTouchDevice = (('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch);
var eventType = (isTouchDevice) ? 'touchend' : 'click';