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)  
    }
  • 相关阅读:
    POJ 2528 Mayor's posters 线段树+离散化
    Leveldb之version与version_set详细对比
    rocksdb编译测试的正确姿势
    ycsb使用方法
    memalign vs malloc
    四种监听器(自身类,外部类,内部类,匿名类)
    数据库基础
    哈希索引和Btree索引
    哈希表hashtable
    抽象类和接口
  • 原文地址:https://www.cnblogs.com/timy/p/9141263.html
Copyright © 2011-2022 走看看