美文网首页
移动端webH5页面开发(rem布局)

移动端webH5页面开发(rem布局)

作者: 风起长林时 | 来源:发表于2018-12-30 17:01 被阅读0次

    之前写H5页面时,虽然也是采用rem布局,但是仍然采用的是媒体查询对根元素进行单独设置,这样不仅麻烦而且设置的时候还不太准确。现在经过改进,直接采用js动态计算,完全不用再去管媒体查询啦。

    一、第一种方案(但又欠缺,需要等到dom完成后才执行)

    $(function(){
        //初始化html像素
        initHTML();
        $(window).resize(function(event) {
            initHTML();
        });
    });
    
    
    //初始化html像素
    function initHTML(){
        //获取当前窗口的高度
        var window_w=$(window).width();
    
        // 当前屏幕背景图宽度(750为设计图的宽度)
        var now_pic_k=window_w/750*100;
    
        // 现在html字体的大小
        var now_html_size=now_pic_k;
            document.documentElement.style.fontSize=now_html_size+'px';
    }
    

    二、第二种方案,页面加载时就执行(在head标签中加入)

    // rem.js
    !function() {
        var html = document.documentElement;
        var setFontSize = function() {
            var width = html.offsetWidth;
            if(width <= 750) {
                html.style.fontSize = width / 7.5+ 'px';
            } else {
                html.style.fontSize = 100 + 'px';
            }
        };
        var timer;
        var setDelay = function() {
            return clearTimeout(timer), (timer = setTimeout(setFontSize, 150));
        }
        window.addEventListener('pageshow', function(evt) {
            return evt.persisted && setDelay();
        });
        window.addEventListener('resize', setDelay);
        setFontSize();
    }();
    

    相关文章

      网友评论

          本文标题:移动端webH5页面开发(rem布局)

          本文链接:https://www.haomeiwen.com/subject/mmzulqtx.html