Запретить масштабирование в Safari для OSX

У меня есть приложение html5 с несколькими областями просмотра. Я намерен использовать HammerJS для предоставления жеста пинч / зум в отдельных окнах просмотра. В настоящее время всякий раз, когда я зажимаю в Safari/OSX, все окно увеличивается или уменьшается, и я хочу предотвратить это. Для iOS это работает:

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, minimal-ui">

Но это не мешает увеличению OSX. Есть ли другие мета, css3 или javascript, которые работают в Safari/OSX?

1 ответ

Решение

Начиная с Safari 10.1+, вы можете подключиться к GestureEvent на macOS/OSX.

window.addEventListener('gesturestart', e => e.preventDefault());
window.addEventListener('gesturechange', e => e.preventDefault());
window.addEventListener('gestureend', e => e.preventDefault());

Вышеуказанное предотвратит срабатывание любого жеста (например, масштабирование). Вы также можете обрабатывать эти события, подключаясь к значениям масштаба и поворота.

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