Позволить/запретить масштабирование на сафари iPhone с JavaScript?

У меня есть 1 страница, которая имеет 2 элемента DIV, который показан/скрыт на основе пользователя, нажимают на кнопки действий с JavaScript, я хотел бы переключить масштабирование при щелчке кнопки действий.

Я попробовал ниже JavaScript, и он изменяет область просмотра meta, но не получает эффекта.

Какие-либо предложения?

var ViewPortAllowZoom = 'width=device-width;';

var ViewPortNoZoom = 'width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=no;';

  function AllowZoom(flag) {
            if (flag == true) {
                $('meta[name*=viewport]').attr('content', ViewPortAllowZoom);                
            }
            else {
                $('meta[name*=viewport]').attr('content', ViewPortNoZoom);
            }
        }
12
задан sshow 24 April 2012 в 11:06
поделиться

1 ответ

Удаление и повторное добавление метатега сработало для меня:

function AllowZoom(flag) {
  if (flag == true) {
    $('head meta[name=viewport]').remove();
    $('head').prepend('<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=10.0, minimum-scale=1, user-scalable=1" />');
  } else {
    $('head meta[name=viewport]').remove();
    $('head').prepend('<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=0" />');              
  }
}

Однако, если пользователь увеличивает масштаб, а затем переключается на отсутствие масштабирования, область просмотра остается увеличенной, и пользователь больше не может изменять масштаб. У кого-нибудь есть решение для этого?

19
ответ дан 2 December 2019 в 05:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: