2016-12-15 2 views
2

Я написал этот код для отключения увеличения или уменьшения масштаба:Как отключить масштабирование мобильного устройства?

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> 
<meta name="HandheldFriendly" content="true" /> 

Он работает отлично во всех мобильных телефонах, кроме последних айфонов (например: iphone 6, iphone 7), где эта функция не работает , Где я совершил ошибку?

+0

Возможный дубликат [запретить просмотр в окне просмотра iOS 10 сафари?] (Http://stackoverflow.com/questions/37808180/disable-viewport-zooming-ios-10-safari) –

ответ

0

Там нет ничего плохого с кодом, это только IOS 10 не поддерживает это

Вы можете найти более here

0

я, наконец, понял, как предотвратить его на КСН 10.
первых, я нашел статью, в которой говорится, что с ios 10 использование метаданных viewport игнорируется с сафари; here's the link.

Тогда, это решение я нашел, как обходной путь:

$(this).on('touchmove', function (event) { 
    if (event.originalEvent.scale !== 1) { 
     event.preventDefault(); 
     event.stopPropagation(); 
    } 
}); 

Примечания:

  • event.preventDefault(); должна работать сама по себе, не используя event.stopPropagation();. Я добавил его, чтобы убедиться, что другие элементы не поймают пинч.
  • Я тестировал его на ipad и iphone, и он работает хорошо.
  • Я также использовал <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" > для других устройств.
Смежные вопросы