博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浏览器缩放检测
阅读量:6324 次
发布时间:2019-06-22

本文共 1143 字,大约阅读时间需要 3 分钟。

  hot3.png

在pc端项目的开发中,经常会遇到用户浏览页面却发现布局出现混乱的情况,这时候排查可能是网页的缩放引起的,所以在页面加载的时候添加了浏览器的缩放检测提示功能。

采用的检测方式里用到一个属性 window.devicePixelRatio ,以下是摘自张鑫旭的 ,有兴趣可以看下;

window.devicePixelRatio是设备上物理像素和设备独立像素(device-independent pixels (dips))的比例。

公式表示就是:window.devicePixelRatio = 物理像素 / dips

和screen.deviceXDPI 、 screen.logicalXDPI 都是为了计算缩放率

代码如下:

// 浏览器缩放检测    function detectZoom (){        var ratio = 0,            screen = window.screen,            ua = navigator.userAgent.toLowerCase();                    if (window.devicePixelRatio !== undefined) {            ratio = window.devicePixelRatio;        }else if (~ua.indexOf('msie')) {  // ie            if (screen.deviceXDPI && screen.logicalXDPI) {                ratio = screen.deviceXDPI / screen.logicalXDPI;            }        }        else if (window.outerWidth !== undefined && window.innerWidth !== undefined) {            ratio = window.outerWidth / window.innerWidth;        }                        if (ratio){        ratio = Math.round(ratio * 100);        }                        return ratio;    };

之后可以使用这个比率来进行提示重置缩放,

150233_DJR2_3300735.png

另外经过检测的是chrome浏览器 win系统本身的缩放也会影响此缩放判断

 

转载于:https://my.oschina.net/mdu/blog/1821227

你可能感兴趣的文章
Redis系列(六)-SortedSets设计技巧
查看>>
Latex技巧
查看>>
Android开发日记(一)
查看>>
java中简单字符替换
查看>>
【推荐】【给中高级开发者】构建高性能ASP.NET应用的几点建议
查看>>
Android开发之蓝牙操作
查看>>
前后端分离的思考与实践(四)
查看>>
获取网卡IP地址命令
查看>>
Java反射机制详解上篇
查看>>
对BBS中一个问题的解答
查看>>
Linux系统基础调优
查看>>
Chrome源码剖析 【序】 && 【一】
查看>>
PHP转换emoji表情为HTML字符实体
查看>>
exchange 2016 辅助角色
查看>>
SQLServer 延迟事务持久性
查看>>
atomikos 创建数据源,报Max number of active transactions
查看>>
关于mount在unix系统上
查看>>
linux logrotate 配置
查看>>
【在win7笔记本上启用wifi热点】win7_wlan.bat
查看>>
“智能停车”真的来了——中国移动5G联创携手锐捷推出“小和轻停”
查看>>