在ios10之前我们能通过设置meta来禁止用户缩放页面:
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />
在ios10系统中meta设置失效了:
为了提高safari中网站的辅助功能,即使网站在视口中设置了user-scalable = no,用户也可以手动缩放。
解决:
监听事件来阻止,代码如下:
window.onload = function () {
document.addEventListener('touchstart', function (event) {
if (event.touches.length > 1) {
event.preventDefault();
}
});
var lastTouchEnd = 0;
document.addEventListener('touchend', function (event) {
var now = (new Date()).getTime();
if (now - lastTouchEnd <= 300) {
event.preventDefault();
}
lastTouchEnd = now;
}, false);
document.addEventListener('gesturestart', function (event) {
event.preventDefault();
});
}