VUE 判断电脑还是手机设备 pc端自适应 移动端rem布局 最全的都在这里了

我的需求是 pc端所有的页面和移动端的登录页,首页 都写在一个项目里

这时候就需要我在登录的时候判断是什么设备 然后跳到相应的页面 采用不同的样式

========================================================

看到后台有小伙伴留言说不知道具体的写在那个文件里 所以决定更新一波,这次写详细点,希望可以更好的帮助到大家

下面这个是我整个项目的目录 ,另外稍微介绍下这个项目

采用vscode 编辑器编码 vue-cli脚手架搭建

node环境下载依赖 结合webpack 采用vux对数据进行管理


如果是手机端的话 我要采用rem布局 设计稿是640px的标准

这是移动端rem布局 1rem=100px

如果是pc端的话 我需要页面自适应 设计稿是宽1920px的标准 并且当电脑屏幕尺寸小于1024px(一般来讲最小的电脑尺寸就是1024px),就不让页面继续缩小了 否则样式错乱,影响用户体验.

把这张图片的代码全部粘 贴 作为一个单独的js文件引入 完美自适应屏幕大小

这个是我要对设备进行判断

这行代码是判断pc登陆还是手机端登录

上面是我分开截取给大家说明的

完整的代码 上图片 我写在了js/rem.js文件中



这个上面用到了jQuery  大家可以npm i jQuery -S下载依赖 也可以根据上面的代码 改成原生js

下面放上所有代码 方便大家使用 希望可以对大家有帮助!

if ((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i))) {

        // alert('手机端')

        var abc = document.documentElement.clientWidth;

        var bl = abc/640//设计稿的宽度

        var fontSize = 100*bl

        document.documentElement.style.fontSize = fontSize + "px"

    }else{

        //  alert('PC端')

        var whdef = 100 / 1920; // 表示1920的设计图,使用100PX的默认值

        var wH = window.innerHeight; // 当前窗口的高度

        var wW = window.innerWidth; // 当前窗口的宽度

        var rem

        if(wW <= 1024) {

            rem = 1024 * whdef;

        } else {

            rem = wW * whdef; // 以默认比例值乘以当前窗口宽度,得到该宽度下的相应FONT-SIZE值

        }

        $('html').css('font-size', rem + "px");

        $(window).resize(function() // 绑定到窗口的这个事件中

            {

                var whdef = 100 / 1920; // 表示1920的设计图,使用100PX的默认值

                var wH = window.innerHeight; // 当前窗口的高度

                var wW = window.innerWidth; // 当前窗口的宽度

                if(wW <= 1024) {

                    rem = 1024 * whdef;

                } else {

                    rem = wW * whdef; // 以默认比例值乘以当前窗口宽度,得到该宽度下的相应FONT-SIZE值

                }

                $('html').css('font-size', rem + "px");

                // var H = document.documentElement.scrollHeight;

                // $('html').height(H);

            });

    }

喜欢的话 点个小心心哦!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容