zoukankan      html  css  js  c++  java
  • meta 标签禁止缩放失效

    之前我们能通过设置meta来禁止用户缩放页面   

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

    但是现在,这个标签在部分浏览器中已经失效。

    我在网上查了资料,在ios10+已经失效----

    为了提高Safari中网站的辅助功能,即使网站在视口中设置了user-scalable = no,用户也可以手动缩放。

    在Android的自带浏览器中(例如华为,魅族,小米)第一次手动缩放时,会提示--再次操作可强制缩放网页---;再次缩放也可以缩放;

    这一现象意味着meta标签的失效。在Android的chrome中不可以用户缩放(表现正常)--------------亲测

    各浏览器开发商逐渐允许用户去缩放网页;这就导致我们开发的产品,在缩放后会发生惨不忍睹的情况;尤其是flex布局的组件。

    为了解决这一问题;我选择采用js事件监听来阻止用户的缩放

    window.onload=function () {         
     document.addEventListener('touchstart',function (event) {  
               if(event.touches.length>1){  
                    event.preventDefault();  
                }  
            })  
    
            var lastTouchEnd=0;
            document.addEventListener('touchend',function (event) {
                var now=(new Date()).getTime(); 
                if(now-lastTouchEnd<=300){  
                    event.preventDefault();  
                }  
                lastTouchEnd=now;  
           },false)  
    }
  • 相关阅读:
    封装Socket.BeginReceive/EndReceive以支持Timeout
    使用反射动态创建类型实例
    泛型List<T>排序(利用反射)
    复旦版最佳医院排行 沪21家医院入选全国百佳
    C#格式化字符串
    一些很酷的.Net技巧
    系列文章--SQLite文章
    C#垃圾回收机制
    C#中Cache的使用
    ASP.NET Cache缓存的使用
  • 原文地址:https://www.cnblogs.com/timy/p/9141263.html
Copyright © 2011-2022 走看看