Работает mousedown /mouseup в jquery для ipad?

Я использую текущий код:

$('body').mousedown(function() {
        $('div#extras').fadeTo('fast', 1);
});

$('body').mouseup(function() {
        $('div#extras').delay(2000).fadeTo(1500, 0);
});

Это прекрасно работает в сафари, но когда я загружаю его и проверяю на ipad, это не работает?

4 ответа

Решение

Я узнал, как это сделать для ipad для тех, кому интересно:

Вместо кода, который я использовал в моем вопросе, вы должны использовать:

$('body').bind( "touchstart", function(e){
        $('div#extras').fadeTo('fast', 1);
});

&

$('body').bind( "touchend", function(e){
        $('div#extras').delay(2000).fadeTo(1500, 0);
});

Не совсем.

Apple Docs

Цитата:

Кликабельный элемент - это ссылка, элемент формы, область карты изображения или любой другой элемент с обработчиками mousemove, mousedown, mouseup или onclick. Прокручиваемый элемент - это любой элемент с соответствующим стилем переполнения, текстовыми областями и прокручиваемыми элементами iframe. Из-за этих различий вам может потребоваться изменить некоторые из ваших элементов на интерактивные элементы, как описано в разделе " Создание элементов интерактивных", чтобы получить желаемое поведение в iPhone OS.

(акцент мой)

Старый пост, но есть универсальное решение:

$('body').on('mousedown touchstart',function(e){
    $('div#extras').fadeTo('fast', 1);
});
$('body').on('mouseup touchend',function(e){
    $('div#extras').delay(2000).fadeTo(1500, 0);
});

Не совсем отвечаю на ваш вопрос, но может пригодиться людям, которые пришли сюда просто для поиска jQuery mousedown/mouseup на ipad.

Я всегда использую этот маленький трюк:

$(element).hover(function() {
   // Do something
});

Это срабатывает при касании при использовании iPad и отменяет действие при щелчке за пределами элемента, поскольку это событие при наведении курсора. Так, например:

// Assuming the element has 'opacity: 0' in CSS

$(element).hover(function() {
   $(this).animate({'opacity': 1}, 200);
});

Создает эффект затухания "при щелчке" и эффект затухания "при наведении мыши".

Другие вопросы по тегам