登录 |  注册
首页 >  编程技术 >  H5 MIP基础入门笔记教程 >  MIP-移动网页加速器-新手指南

MIP-移动网页加速器-新手指南

MIP (Mobile Instant Pages - 移动网页加速器)主要用于移动端页面加速。
这篇文档将带你快速创建一个 MIP 页面。

mip.jpg

1. 创建 HTML 文件

首先创建一个标准的 HTML 文件, 注意:

  • <html>标签中增加mip标识

  • 编码为 utf-8

  • 添加meta-viewport,用于移动端展现

<!DOCTYPE html>  
<html mip>  
    <head>  
        <meta charset="UTF-8">  
        <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">  
        <title>Hello World</title>  
    </head>  
    <body>  
        <h2>Hello World!</h2>          
    </body>  
</html>

2. 添加MIP运行环境

在 HTML 代码中,添加MIP依赖的mip.jsmip.css

<!DOCTYPE html>
<html mip>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
        <link rel="stylesheet" type="text/css" href="https://mipcache.bdstatic.com/static/v1/mip.css">
        <title>Hello World</title>
    </head>
    <body>
        <h2>Hello World!</h2>
        <script src="https://mipcache.bdstatic.com/static/v1/mip.js"></script>  
    </body>
</html>


3. 添加 MIP 关联标签

<link rel="miphtml"><link rel="canonical">主要用于告知搜索引擎页面间的关系。添加关联标签后,MIP页的会继承原页面(移动端)的点击权重,同时MIP页将作为搜索引擎的首选导流页面。
使用规则:

  • <link rel="canonical">MIP 页中使用,<link rel="miphtml">原页面使用。

  • 原页面中已经存在<link rel="canonical">标签指向PC页,则MIP页<link rel="canonical">的 href 也指向PC页。

  • MIP页没有对应的原页面,则指向MIP页本身url。

<!DOCTYPE html>
<html mip>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
        <link rel="stylesheet" type="text/css" href="https://mipcache.bdstatic.com/static/v1/mip.css">
        <link rel="canonical" href="//www.mipengine.org/">
        <title>Hello World</title>
    </head>
    <body>
        <h2>Hello World!</h2>
        <script src="https://mipcache.bdstatic.com/static/v1/mip.js"></script>   
    </body>
</html>


4. 添加样式

出于速度考虑,建议內联使用 css 样式。所有样式写在<style mip-custom></style>中,注意:style 标签仅允许出现一次。

<!DOCTYPE html>
<html mip>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
        <link rel="stylesheet" type="text/css" href="https://mipcache.bdstatic.com/static/v1/mip.css">
        <link rel="canonical" href="//www.mipengine.org/">
        <title>Hello World</title>
        <style mip-custom>
            h2 { color: red;}
        </style>
    </head>
    <body>
        <h2>Hello World!</h2>
        <script src="https://mipcache.bdstatic.com/static/v1/mip.js"></script>   
    </body>
</html>


5. 替换禁用 HTML 标签

MIP十分关注页面速度,也因此禁用了一些引起拖慢速度的html标签(禁用列表)。例如,<img>标签会引起浏览器的repaint和reflow,为了避免这些,MIP提供了替代标签<mip-img>。详见<mip-img>使用文档

<!DOCTYPE html>
<html mip>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
        <link rel="stylesheet" type="text/css" href="https://mipcache.bdstatic.com/static/v1/mip.css">
        <link rel="canonical" href="//www.mipengine.org/">
        <title>Hello World</title>
        <style mip-custom>
            h2 { color: red;}
        </style>
    </head>
    <body>
        <h2>Hello World!</h2>
        <mip-img src="https://www.mipengine.org/static/img/mip_logo_3b722d7.png"></mip-img>
        <script src="https://mipcache.bdstatic.com/static/v1/mip.js"></script>   
    </body>
</html>


6. 使用MIP组件

出于对代码质量和性能的考虑,MIP页中不允许自定义javascript代码,所有的交互通过引入MIP组件实现。MIP组件可以理解为封装了js的自定义html标签。上一步中的<mip-img>也是一个MIP组件。点击这里查看更多组件。

我们以分享组件为例,根据分享组件文档,组件对应的html标签为<mip-share>,需要依赖//mipcache.bdstatic.com/static/v1/mip-share/mip-share.js脚本,用在页面里就是这样:

<!DOCTYPE html>
<html mip>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
        <link rel="stylesheet" type="text/css" href="https://mipcache.bdstatic.com/static/v1/mip.css">
        <link rel="canonical" href="//www.mipengine.org/">
        <title>Hello World</title>
        <style mip-custom>
            h2 { color: red;}
        </style>
    </head>
    <body>
        <h2>Hello World!</h2>
        <mip-img src="https://www.mipengine.org/static/img/mip_logo_3b722d7.png"></mip-img>
        <mip-share title="分享:我的第一个MIP页面"></mip-share>
        <script src="https://mipcache.bdstatic.com/static/v1/mip.js"></script>
        <script src="https://mipcache.bdstatic.com/static/v1/mip-share/mip-share.js"></script> 
    </body>
</html>


在使用组件时,请注意阅读组件文档,查看组件是否依赖额外脚本。如果依赖,请在mip.js之后引入脚本。

7. 预览

开发完成后,可以使用MIP校验工具保证代码规范。

MIP页文件可以直接运行,你可以选择如下方式,像预览普通HTML站点一样预览 MIP HTML 页面:

  • 直接在浏览器中打开(由于XML Http Requests失败可能会导致某些元素预览失败)

  • 在本地部署一个服务,如apache,nginx等

8. 起飞

到目前为止,你已经创建好了一个MIP页面。这个页面有图,有文,能分享,可以在浏览器中运行。

进阶的内容,请参考

  • MIP HTML 规范

  • 组件布局

  • MIP 加速原理

  • 扩展组件开发规范

下一篇: 什么是MIP(移动网页加速器)
推荐文章
  • 在HTML中,如果你想让一个输入框(input元素)不可编辑,你可以通过设置其readonly属性来实现。示例如下:input type="text" value="此处内容不可编辑" readonly在上述代码中,readonly属性使得用户无法修改输入框中的内容。另外,如果你希望输入框完全不可交
  • ASP.NET教程ASP.NET又称为ASP+,基于.NETFramework的Web开发平台,是微软公司推出的新一代脚本语言。ASP.NET是一个使用HTML、CSS、JavaScript和服务器脚本创建网页和网站的开发框架。ASP.NET支持三种不一样的开发模式:WebPages(Web页面)、
  • C# 判断判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)。下面是大多数编程语言中典型的判断结构的通常形式:判断语句C#提供了以下类型的判断语句。点击链接查看每个语句的细节。语句描述if语句一个 if语句 由一个布尔表达式后跟
  • C#循环有的时候,可能需要多次执行同一块代码。通常情况下,语句是顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。编程语言提供了允许更为复杂的执行路径的多种控制结构。循环语句允许我们多次执行一个语句或语句组,下面是大多数编程语言中循环语句的通常形式:循环类型C#提供了以下几种循环类型
  • C#数组(Array)数组是一个存储相同类型元素的固定大小的顺序集合。数组是用来存储数据的集合,一般认为数组是一个同一类型变量的集合。声明数组变量并不是声明number0、number1、...、number99一个个单独的变量,而是声明一个就像numbers这样的变量,然后使用numbers[0]
  • ASP.NET是一个由微软公司开发的用于构建Web应用程序的框架,它是.NETFramework的一部分。它提供了一种模型-视图-控制器(MVC)架构、Web表单以及最新的ASP.NETCore中的RazorPages等多种开发模式,可以用来创建动态网页和Web服务。以下是一些基础的ASP.NET编
学习大纲