Устранить задержку 300 мс на событиях кликов в мобильном Safari

прочитал этоМобильный Safari имеет задержку 300 мс на событиях кликов с момента нажатия ссылки / кнопки до момента возникновения события. Причиной задержки является ожидание, чтобы увидеть, намеревается ли пользователь дважды щелкнуть, но с точки зрения UX ожидание 300 мс часто нежелательно.

Одно решение чтобы устранить эту задержку в 300 мс, стоит использовать jQuery Mobile »нажмите" обработки. К сожалению, Я'я не знаком с этой структурой и нене хочу загружать какой-то большой фреймворк, если все, что мне нужно, это строка или две из кода, применяющегоtouchend в правильном направлении.

Как и многие сайты, мой сайт имеет много событий, таких как это:

$("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
});

и что яЯ хотел бы сделать это, чтобы избавиться от задержки 300 мс наВСЕ эти события кликов с использованием одного фрагмента кода, например:

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

Это плохая / хорошая идея?

Ответы на вопрос(10)

Ваш ответ на вопрос