MIP组件有哪些 MIP组件概述

 更新时间:2016年12月21日 21:00  点击:2160
MIP组件有哪些?MIP组件有三种:内置组件、个性化组件以及广告组件,不同的组件有着不同的作用,下面请看详细的介绍。

1、内置组件

图片组件(mip-img)

视频组件(mip-video)

mip-pix 组件(mip-pix)

轮播组件(mip-carousel)

iframe 组件(mip-iframe)

2、个性化组件

折叠节点组件(mip-according)

动图组件(mip-anim)

app下载组件(mip-appdl)

音频组件(mip-audio)

百度统计组件(mip-stats-baidu)

筛选组件(mip-filter)

悬浮组件(mip-fixed)

表单组件(mip-form)

系统区分组件(mip-html-os)

页面跳转组件(mip-link)

菜单组件(mip-nav-slidedown)

分享组件(mip-share)

侧边栏组件(mip-sidebar)

天润统计组件(mip-stats-tianrun)

3、广告组件

广告组件(mip-ad)

如需其他组件,如广告组件和统计组件,可以参考组件开发规范开发并提交给我们。

在某些情况下,站点对于同一个html页面,可能存在两种,一个是mip页,一个是原页面。百度会抓取这两个页面,并利用canonical标签将它们联系起来。

关联标签

你必须在MIP添加<link rel="canonical">指向原始页面,以保证MIP更好的继承原始页面的权重。

同时,你可以在原始页面中添加<link rel="miphtml">指向MIP,以使得搜索引擎更好的发现你创建的MIP。

使用规则:

  • 在MIP页中使用<link rel="canonical”>,指向原页面(m站),也可以指向原始网页中<link rel="canonical">所指向的pc页。
  • 若MIP页没有对应的原页面,则指向MIP页本身url。
  • 在原页面(m站)使用<link rel="miphtml">,用来指向MIP页。

在head中添加link标签让百度搜索发现你的页面

两种页面同时存在

在非 MIP 页中添加:

<linkrel="miphtml"href="https://m.baidu.com/mip/demo.html">

在 MIP 页中添加:

<linkrel="canonical"href="https://m.baidu.com/demo.html">

如果只有 MIP 页

同样需要添加,指向自己:

<linkrel="canonical"href="https://m.baidu.com/mip/demo.html">

新建MIP页的文件path建议

原网页与mip页的url的对应关系尽量简单、直接。

原网页出现的文档名或文档id,在MIP页命名时也要出现。 

本次为大家带来的是MIP组件开发规范,帮助大家了解组件在开发时需要用到的组建是哪些,以及这些组件的作用等。

开发文档

站长开发扩展组件请参照下面链接

扩展组件 开发文档

开发辅助工具库

开发辅助工具和模块

手势:单击,双击,滑动

其它:dom触发js事件

组件类型划分

1、内置组件

定义:为了解决性能、安全性问题必须要使用的组件,代码被集成在mip.js中。如 mip-img、mip-video 等。

2、扩展组件

定义:其它类型的组件,一般情况下组件开发都是扩展组件,使用时需要引入对应的js文件。

mip除了手势之外还提供一些功能,以解决在组件中遇到的各种问题和提升开发效率,下面就为大家带来这些功能的详细介绍。

prerenderElement

提前渲染 mip 元素。

如果元素不在 viewport 内,强制触发元素的 viewportCallback firstInviewCallback 方法。

varelement =document.getElementById('mip-test');

MIP.prerenderElement(element);

event-action

由于mip不允许使用附加的JS代码。所以提供了一套事件action机制,可以通过dom属性来触发某个mip元素的自定义事件。

html:

<mip-testid="test"></mip-test>

<divon="tap:test.custom_event">不带参数</div>

<divon="tap:test.custom_event(test_button)">带参数</div>

<divon="tap:test.custom_event(test_button) tap:test.custom_event(test_button1)">多个事件</div>

JS:

// mip-test.js

define(function(require){

var customEle =require('cust omElement').create();

customEle.prototype.build =function(){

// 绑定事件,其它元素可通过 on="xxx" 触发

this.addEventAction("custom_event",function(event/* 对应的事件对象 */, str/* 事件参数 */){

console.log(str);// undefined or 'test_button' or 'test_button1'

});

};

returncustomEle;

});

[!--infotagslink--]

相关文章

  • 关于JavaScript中name的意义冲突示例介绍

    在昨天的《Javascript权威指南》学习笔记之十:ECMAScript 5 增强的对象模型一文中,对于一段代码的调试出现了一个奇怪现象,现将源代码贴在下面: 复制代码 代码如下: <script type="text/javascript"> function Person(){}...2014-05-31
  • vue-cli设置publicPath小记

    这篇文章主要介绍了vue-cli设置publicPath小记,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-14
  • javascript自定义的addClass()方法

    复制代码 代码如下: //element:需要添加新样式的元素,value:新的样式 function addClass(element, value ){ if (!element.className){ element.className = value; }else { newClassName = element.className; newClas...2014-05-31
  • Vue组件跨层级获取组件操作

    这篇文章主要介绍了Vue组件跨层级获取组件操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-28
  • JavaScript中的this关键字使用方法总结

    在javascritp中,不一定只有对象方法的上下文中才有this, 全局函数调用和其他的几种不同的上下文中也有this指代。 它可以是全局对象、当前对象或者任意对象,这完全取决于函数的调用方式。JavaScript 中函数的调用有以下...2015-03-15
  • javascript的事件触发器介绍的实现

    事件触发器从字面意思上可以很好的理解,就是用来触发事件的,但是有些没有用过的朋友可能就会迷惑了,事件不是通常都由用户在页面上的实际操作来触发的吗?这个观点不完全正确,因为有些事件必须由程序来实现,如自定义事件,jQue...2014-06-07
  • JavaScript中逗号运算符介绍及使用示例

    有一道js面试题,题目是这样的:下列代码的执行结果是什么,为什么? 复制代码 代码如下: var i, j, k; for (i=0, j=0; i<10, j<6; i++, j++) { k = i+j; } document.write(k); 答案是显示10,这道题主要考察JavaScript的逗...2015-03-15
  • 详解JavaScript操作HTML DOM的基本方式

    通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素。 HTML DOM (文档对象模型) 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。 HTML DOM 模型被构造为对象的树: 通过可编程的对象模型,Java...2015-10-23
  • ActiveX控件与Javascript之间的交互示例

    1、ActiveX向Javascript传参 复制代码 代码如下: <script language="javascript" for="objectname" event="fun1(arg)"> fun2(arg); </script> objectname为ActiveX控件名,通过<object>标签里的id属性设定,如下; 复制...2014-06-07
  • JavaScript获取浏览器信息的方法

    Window有navigator对象让我们得知浏览器的全部信息.我们可以利用一系列的API函数得知浏览器的信息.JavaScript代码如下:function message(){ txt = "<p>浏览器代码名: " + navigator.appCodeName + "</p>";txt+= "<p>...2015-11-24
  • 跟我学习javascript的最新标准ES6

    虽然ES6都还没真正发布,但已经有用ES6重写的程序了,各种关于ES789的提议已经开始了,这你敢信。潮流不是我等大众所能追赶的。潮流虽然太快,但我们不停下学习的步伐,就不会被潮流丢下的,下面来领略下ES6中新特性,一堵新生代JS...2015-11-24
  • vue cli4.0项目引入typescript的方法

    这篇文章主要介绍了vue cli4.0项目引入typescript的方法,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-17
  • JavaScript操作URL的相关内容集锦

    ---恢复内容开始---1.location.href.....(1)self.loction.href="http://www.cnblogs.com/url" window.location.href="http://www.cnblogs.com/url" 以上两个用法相同均为在当前页面打开URL页面 (2)this.locati...2015-10-30
  • javascript实现tab切换的四种方法

    tab切换在网页中很常见,故最近总结了4种实现方法。 首先,写出tab的框架,加上最简单的样式,代码如下: <!DOCTYPE html> <html> <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style> *{ pa...2015-11-08
  • WebStorm无法正确识别Vue3组合式API的解决方案

    这篇文章主要介绍了WebStorm无法正确识别Vue3组合式API的解决方案,帮助大家更好的理解和学习使用vue框架,感兴趣的朋友可以了解下...2021-02-18
  • 基于JavaScript如何实现私有成员的语法特征及私有成员的实现方式

    前言在面向对象的编程范式中,封装都是必不可少的一个概念,而在诸如 Java,C++等传统的面向对象的语言中, 私有成员是实现封装的一个重要途径。但在 JavaScript 中,确没有在语法特性上对私有成员提供支持, 这也使得开发人员使...2015-10-30
  • Vue实现动态查询规则生成组件

    今天我们来给大家介绍下在Vue开发中我们经常会碰到的一种需求场景,本文主要介绍了Vue动态查询规则生成组件,需要的朋友们下面随着小编来一起学习学习吧...2021-05-27
  • javascript实现数独解法

    生生把写过的java版改成javascript版,第一次写,很不专业,见谅。唉,我是有多闲。复制代码 代码如下: var Sudoku = { init: function (str) { this.blank = []; this.fixed = []; this.cell =...2015-03-15
  • javascript中的document.open()方法使用介绍

    document.open()方法打开一个新的文档,并用document.write()方法编写文档的内容,然后用document.close()方法关闭文档操作,使其内容显示出来。 例如: 复制代码 代码如下: <script type="text/javascript"> window.onloa...2013-10-13
  • javascript中slice(),splice(),split(),substring(),substr()使用方法

    1.slice();Array和String对象都有在Array中 slice(i,[j])i为开始截取的索引值,负数代表从末尾算起的索引值,-1为倒数第一个元素 j为结束的索引值,缺省时则获取从i到末尾的所有元素参数返回: 返回索引值从i到j的数组,原数组...2015-03-15