使用javascript检测浏览器缩放级别

时间:2010-11-09 04:59:15

标签: javascript css

当用户更改浏览器的缩放级别时,是否可以检测浏览器缩放级别,使用javascript可以检测默认缩放级别。我需要根据缩放级别更改调用不同的xml文件。

2 个答案:

答案 0 :(得分:8)

我发现每个浏览器都必须有所不同:

这在safari和chrome中效果很好:

zoom = parseInt(document.defaultView.getComputedStyle(document.documentElement, null).width,10)/document.documentElement.clientWidth

这在IE8 +中运行良好(除非你的用户有一些奇怪的屏幕....):

zoom = window.screen.deviceXDPI/96

对于Firefox和IE7,我使用this 虽然我仍然没有在Mac上使用Firefox ...

祝你好运。

答案 1 :(得分:0)

这将提供相对于首次加载页面时的初始缩放比例的当前缩放比例,如果未加载页面(100%),则将为您提供实际的实际当前缩放比例:

window.addEventListener('resize',()=>{
    var height = Math.max( body.scrollHeight, body.offsetHeight, 
      html.clientHeight, html.scrollHeight, html.offsetHeight );
      const ratio = ( height /  document.documentElement.clientHeight )
      if (!window.zc_)
      {
        window.zc_ = 100/ratio
      }
    const zoom = ratio* window.zc_
    console.log(
      zoom
      );
    })