移动端布局适配

前言

接收一个之前的项目,这里的适配布局使用的是原生监听,重写登录页面存在,键盘弹起导致页面适配变形

重写移动适配

(function(win) {
        var tid;
        function refreshRem() {
            let designSize = 750; // 设计图尺寸
            let html = document.documentElement;
            let wW = html.clientWidth;// 窗口宽度
            let rem = wW * 100 / designSize;
            document.documentElement.style.fontSize = rem + 'px';
        }

        win.addEventListener('resize', function() {
            clearTimeout(tid);
            tid = setTimeout(refreshRem);
        }, false);
        win.addEventListener('pageshow', function(e) {
            if (e.persisted) {
                clearTimeout(tid);
                tid = setTimeout(refreshRem);
            }
        }, false);

        refreshRem();

    })(window);

pc端适配

!(function (doc, win) {
    var docEle = doc.documentElement,
        evt = "onorientationchange" in window ? "orientationchange" : "resize",
        fn = function () {
            var width = docEle.clientWidth;
            var fs = (width / 1920) * 100
            if (width < 960) {
                fs = (960 / 1920) * 100
            }
            width && (docEle.style.fontSize = fs + "px");
            /* document.querySelector('meta[name="viewport"]').setAttribute('content','initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no');*/
        };
    fn()
    win.addEventListener(evt, fn, false);
    doc.addEventListener("DOMContentLoaded", fn, false);


    document.addEventListener("error", function (e) {

        var elem = e.target;
        if (elem.tagName.toLowerCase() == 'img') {
        // 错误图片的默认显示
            elem.src = "static/images/imgLoadFail.jpg";
        }
    }, true);
}(document, window));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值