Упомянутое здесь масштабирование относится не к масштабированию размера браузера, а скорее к процентному масштабированию веб -контента браузера (нажмите CTRL и клавиши + знак или ключи - знаки).
Есть много способов обнаружить этот вид масштабирования. QQ Space использует Flash, чтобы определить, масштабируется ли браузер. Вот метод JavaScript для обнаружения масштабирования браузера.
Для IE6 я просто игнорирую это, потому что IE6 может масштабировать только текст.
Давайте впервые поговорим о стандартном интерфейсе обнаружения, предоставленном браузером. window.devicepixelratio - это соотношение физических пикселей на устройстве и независимых пикселей устройства. Этот атрибут можно использовать для определения того, масштабируется ли веб -страница. В обычном браузере ПК значение по умолчанию составляет 1, если по умолчанию нет масштабирования. В настоящее время Firefox, Chrome и т. Д. Хорошо поддерживаются.
Что ж, пришло время поговорить о том, как справляется IE. IE предоставляет два атрибута: window.screen.devicexdpi и window.screen.logicalxdpi. DeviceXDPI - это соответствующие физические пиксели на устройстве, а LogicalXDPI - это доля независимых пикселей устройства. Интерфейс обнаружения стандарта оценки также основан на улучшении метода IE. Значение по умолчанию этих двух атрибутов в системах над Windows XP+ составляет 96, поскольку значение по умолчанию системы составляет 96DPI.
Для браузеров, которые не поддерживают два вышеуказанных, вы также можете использовать два свойства Window.outerWidth и Window.innerWidth. Внешняя трубка возвращает фактическую внешнюю ширину элемента окна, внутренняя трубка возвращает фактическую внутреннюю ширину элемента окна, обе ширины включают ширину, включая полосу прокрутки.
С этими атрибутами вы можете в основном решить общие браузеры в браузерах ПК. Код реализации выглядит следующим образом:
Если возвращаемое значение функции DeTectZoom составляет 100, это уровень увеличения по умолчанию, если оно превышает 100, оно увеличено, и если оно меньше 100, оно сокращается.
function detectzoom () {var ination = 0, screen = window.screen, ua = navigator.useragent.tolowercase (); if (window.devicepixelratio! == undefined) {atation = window.devicepixelratio; } else if (~ ua.indexof ('msie')) {if (screen.devicexdpi && screen.logicalxdpi) {catio = screen.devicexdpi / screen.logicalxdpi; }} else if (window.outerwidth! == undefined && window.innerwidth! == undefined) {cutio = window.outerwidth / window.innerwidth; } if (catio) {catio = math.round (соотношение * 100); } коэффициент возврата;};Оригинальные статьи, пожалуйста, укажите перепечатку: перепечатано из фронтальной разработки