scale.fix.js

无意间在一个网站上看到的,本来是对另一个效果感兴趣的,结果看到这个放开来的js就读了一下。

var metas = document.getElementsByTagName('meta');
var i;
if (navigator.userAgent.match(/iPhone/i)) {
    for (i=0; i<metas.length; i++) {
        if (metas[i].name == "viewport") {
            metas[i].content = "width=device-width, minimum-scale=1.0, maximum-scale=1.0";
        }
    }
    document.addEventListener("gesturestart", gestureStart, false);
}
function gestureStart() {
    for (i=0; i<metas.length; i++) {
        if (metas[i].name == "viewport") {
            metas[i].content = "width=device-width, minimum-scale=0.25, maximum-scale=1.6";
        }
    }
}

这个js只做了一件事,如果设备是iphone的话,就把缩放设置为1.0,而一旦发生手势事件的时候就把缩放设置为0.25-1.6。

这种动态获取meta标签寻找viewport的方法还蛮独特的,以前没见过,记录一下。

posted @ 2016-06-10 22:48  zcynine  阅读(239)  评论(0编辑  收藏  举报