Я припускаю, що в мене є <div>область контейнера для вводу з текстом, повзунками та кнопками в ньому, і я хочу перешкодити випадковим подвійним натисканням на це <div>. Далі не перешкоджає масштабуванню області введення, і це не стосується подвійного натискання та збільшення масштабу за межами моєї <div>області. Існують варіанти залежно від програми браузера.
Я просто спробував це.
(1) Для Safari на iOS та Chrome на Android, і це кращий метод. Працює за винятком Інтернет-програми на Samsung, де він відключає подвійне натискання не повністю <div>, а принаймні на елементи, що обробляють крани. Він повертається return false, за винятком входів textта rangeвходів.
$('selector of <div> input area').on('touchend',disabledoubletap);
function disabledoubletap(ev) {
var preventok=$(ev.target).is('input[type=text],input[type=range]');
if(preventok==false) return false;
}
(2) Опціонально для вбудованого інтернет-додатку для Android (5.1, Samsung), не перешкоджає подвійному натисканню на <div>, але призупиняє масштабування <div>:
$('selector of <div> input area').on('touchstart touchend',disabledoubletap);
(3) Для Chrome на Android 5.1 взагалі вимикає подвійне торкання, не перешкоджає масштабуванню та нічого не робить щодо подвійного натискання в інших браузерах. Інгібування подвійного натискання на <meta name="viewport" ...>це подразнює, тому що <meta name="viewport" ...>здається хорошою практикою.
<meta name="viewport" content="width=device-width, initial-scale=1,
maximum-scale=5, user-scalable=yes">