【问题标题】:window.screen.width value not changing in iPad browsers when screen orientation changed屏幕方向更改时,iPad 浏览器中的 window.screen.width 值不会更改
【发布时间】:2016-09-08 09:56:54
【问题描述】:

我正在尝试使用window.screen.width 获取用户设备的屏幕宽度。这种方法在大多数设备上都可以正常工作,但在 iPad 上却不行。当 iPad 处于纵向模式时,屏幕宽度显示为 768px,高度为 1024px(使用window.screen.height)。到目前为止一切正常。但是横向模式下的宽度和高度也保持不变。在其他设备中,“width*height”值会在方向改变时切换,我所有的计算都是基于这个概念。

【问题讨论】:

    标签: javascript html ipad


    【解决方案1】:

    使用替代解决方案

    window.innerWidth 
    window.innerHeight
    

    如果你的 webview 填满你的 ios ViewController 会很完美 即使您在应用程序运行时更改方向,也会为您提供正确的值..

    screen.availWidth & screen.availHeight 仅在更改 iPad 方向之前的第一次运行时为您提供正确的值

    【讨论】:

      【解决方案2】:

      不要使用 screen.width,而是使用下面的:

      var body = document.body;
      
          if(body.scrollWidth < 1024){
            //code here
          }
      
          if(body.scrollWidth < 768){
            //code here
          }
      
          if(body.scrollWidth == 1024){
            //code here
          }
      
          if(body.scrollWidth <= 1024){
            //code here
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多