В jQuery mobile, какая разница между tap и vclick? - программирование
Подтвердить что ты не робот

В jQuery mobile, какая разница между tap и vclick?

какое событие я должен использовать для прослушивания? зачем использовать vclick? и я просто не знаю, какую ситуацию использовать.

4b9b3361

Ответ 1

В случае использования jQuery Mobile Tap используется только для мобильных устройств. Это уже не случай.

VClick был создан, чтобы устранить разрыв между несовместимостью между кликом и телом между настольными/мобильными устройствами.

Теперь дни, когда вы случайно используете кран, но проблем мало. На плате iOS произойдет сбой. Вместо этого следует использовать Touchstart.

Примеры:

VClick

Будет работать как на настольных, так и на мобильных устройствах.

  • Android 4.1.1 - без задержки
  • iOS - без задержки
  • Обои для рабочего Firefox 19 и Chrome 25.0.1364.152 - Без задержки

http://jsfiddle.net/Gajotres/PYPXu/embedded/result/

$(document).on('pagebeforeshow', '#index', function(){       
    $( document ).on( "vclick", '[data-role="page"]', function() {
        $( this ).append( "<span style='color:#00F;'>vmouseup fired.</span>" );
    });
});

Нажмите:

Нажмите

Он работал только на мобильных устройствах, теперь работает и на настольных браузерах, но сбой на iOS с jQuery Mobile версии 1.1 и ниже.

  • Android 4.1.1 - без задержки
  • iOS - без задержки
  • Обои для рабочего Firefox 19 и Chrome 25.0.1364.152 - Без задержки

http://jsfiddle.net/Gajotres/k8kSA/

$(document).on('pagebeforeshow', '#index', function(){       
    $( document ).on( "tap", '[data-role="page"]', function() {
        $( this ).append( "<span style='color:#00F;'>tap fired.</span>" );
    });
});

Нажмите

Будет работать на мобильных устройствах и настольных браузерах.

  • Android 4.1.1 - Видимая задержка (300+ мс)
  • iOS - без задержки
  • Обои для рабочего Firefox 19 и Chrome 25.0.1364.152 - Без задержки

http://jsfiddle.net/Gajotres/L2FHp/

$(document).on('pagebeforeshow', '#index', function(){       
    $( document ).on( "click", '[data-role="page"]', function() {
        $( this ).append( "<span style='color:#00F;'>click fired.</span>" );
    });
});

Заключение

Если вы хотите, чтобы палка совместимости с jQM с обратной связью с VClick, в любом другом случае используйте Нажмите.

Ответ 2

vclick (виртуализированный клик) имитирует событие onclick.

http://api.jquerymobile.com/vclick/

Включить триггеры события после быстрого, полного целевого объекта с одним касанием.

http://api.jquerymobile.com/tap/

Это зависит от того, что вы делаете, но если у вас нет конкретной причины (например, поддержка рабочего стола и мобильного телефона с теми же js), я бы использовал tap.

Дополнительная информация здесь https://coderwall.com/p/bdxjzg

Ответ 3

Я только что заметил большое различие между "tap" и "vclick". "vclick" срабатывает, если вы нажмете на кнопку и нажмите клавишу ввода - "tap" не делает.