美文网首页web前端 pc h5 浏览器
H5屏幕适配,数据请求

H5屏幕适配,数据请求

作者: 奇怪的她的他 | 来源:发表于2018-04-27 10:54 被阅读169次

    市场APP原生与h5混合开发的项目越来越多,对于一个iOS开发者而言,掌握一定的前端开发常识还是有必要的,咱们今天就来说说,H5怎么做各种移动端手机适配,然后又怎么向服务器发起数据请求的。

    一、H5屏幕适配

    首先你得创建一个js文件,姑且命名为mobile.js。
    然后编辑内容:

    function resize(){
    
      //UI设计师图的尺寸宽度
      var dw=750;
      //屏幕宽度
      var cw=document.documentElement.clientWidth;
      console.log("当前屏幕宽度"+cw);
      //一个rem=100px,不同的屏幕会根据屏幕的比例系数来变化
      var rem=cw/dw*100;
      //最小屏幕设置,安卓最小屏幕宽度240px
      if(rem<=32){
          rem=32;
      }
      document.documentElement.style.fontSize=rem+"px";
    }
    resize();
    window.onresize = function(){
      resize();
    }
    

    然后在需要适配的HTML中用<script></script>标签引入即可。单位不再用px,统一用rem即可。同时HTML的head标签里还得添加几句代码:

    <meta name="viewport" content="initial-scale=1,maximum-scale=1, minimum-scale=1 user-scalable=no">
    <meta name="format-detection" content="telephone=no">
    <meta name="apple-mobile-web-app-capable" content="yes" >
    <script src="js/mobile.js"></script>
    

    二、JQuery+ajax网络数据请求。

    在编写代码之前,先给大家说几个注意事项,一般前端的数据请求都是利用JQuery,因为JQuery是对js的封装框架,数据请求也不用像js那样写那么多代码,所以一般需要下载一个JQuery文件。下载地址:http://www.jq22.com/jquery-info122,可以任选一个版本。

    • 先引入JQuery文件,然后在script标签里写以下代码。
     $.ajax({
        //指定请求类型
        type:"get",
        //请求地址
        url:"这儿填写你们服务器的URL",
        //服务器返回值类型
        dataType: 'json',
        //传给服务器的参数
        data: {
            page:1,
            type:0
        },
        //成功回调
        success:function(data){
            console.log(data);
        }
    });
    
    • 还有一个注意点:大多数情况下,我们都希望能够利用浏览器调试服务器给我们的接口,我们在本地浏览器请求,这个时候,会遇到一个跨域的问题。


      2319256-57ba8dd19ffebf4b.png

    那怎么解决呢?请参考:https://www.jianshu.com/p/2db73311fcbe

    三、数据请求的封装,以及js的外部调用

    • 一般情况下,我们经常会想把很多公共的类放在一个配置文件里,就像iOS中的prefix文件,那么在js中怎么做呢?
      新建一个js文件。编辑以下代码:

      //引入网络数据请求js文件
      document.write("<script language='javascript' src='NetTool/htpp-request.js'></script>");
      //记得引入文件目录时,要记得包含文件夹
      document.write("<script language='javascript' src='JQuery/jquery-3.1.1.min.js'></script>");
      
    • 因为js是一门弱语言,所以只要你在同一个HTML中引入了不同的几个js文件,那么这几个js文件的方法就可以互相调用,这一点不像iOS,在某个类调用外部类时,必须导入头文件,js是在onload之前就已经把你在HTML中导入的js文件都编译了一遍,同时因为它是弱语言,执行顺序由上而下,所以引用顺序最好按照顺序来,比如你要用到jQuery,和一个本地HTML,那么假如你要在HTML中用jQuery,引用顺序最好在jQuery之后。

    相关文章

      网友评论

        本文标题:H5屏幕适配,数据请求

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