Wyeliminuj opóźnienie 300 ms w przypadku kliknięć w mobilnym Safari

Przeczytałem tomobilne Safari ma 300 ms opóźnienia w kliknięciach od momentu kliknięcia linku / przycisku do momentu wystrzelenia zdarzenia. Powodem opóźnienia jest czekanie, aby zobaczyć, czy użytkownik zamierza kliknąć dwukrotnie, ale z perspektywy UX oczekiwanie 300ms jest często niepożądane.

Jedno rozwiązanie aby wyeliminować to opóźnienie 300 ms, należy użyć obsługi „jp” w jQuery Mobile. Niestety nie jestem zaznajomiony z tym frameworkiem i nie chcę ładować dużych ram, jeśli potrzebuję tylko jednej lub dwóch linii kodutouchend we właściwy sposób.

Podobnie jak wiele witryn, moja strona ma wiele takich wydarzeń:

$("button.submitBtn").on('click', function (e) {   
  $.ajaxSubmit({... //ajax form submisssion
});

$("a.ajax").on('click', function (e) {   
  $.ajax({... //ajax page loading
});

$("button.modal").on('click', function (e) {   
      //show/hide modal dialog
});

i chciałbym się pozbyć opóźnienia 300 msWSZYSTKO te zdarzenia kliknięcia używają jednego fragmentu kodu takiego jak ten:

$("a, button").on('tap', function (e) {
 $(this).trigger('click');
 e.preventDefault();
});

Czy to zły / dobry pomysł?

questionAnswers(10)

yourAnswerToTheQuestion