AMP

即插即用组件

AMP 提供了一个庞大的组件库,用于创建常见小部件和独特的 Web 元素。例如,一个 折叠和展开内容部分的手风琴 或一个 用于收集和存储用户 Cookie 同意的 UI 控件。对于我们的第一个页面,我们将使用 amp-base-carousel 将我们的单个图像变成图片轮播。

导入脚本

amp-img 不同,amp-base-carousel 组件是一个扩展组件。扩展组件逻辑不包含在前面讨论的样板代码提供的基本 AMP JS 中。这有助于通过明确仅加载页面使用的组件的 JavaScript 来保持 AMP 页面轻量和精简。

要使用 amp-base-carousel 组件,我们必须导入其脚本标记。复制下面的标记并将其置于文档的头部。

您可以在每个组件的参考文档顶部找到其导入脚本。

<script async custom-element="amp-base-carousel" src="https://cdn.ampproject.org/v0/amp-base-carousel-0.1.js"></script>

接下来,在第一个元素下再包含一个 <amp-img> 元素,然后将其包裹在 <amp-base-carousel> 标记内,如下所示

<amp-base-carousel width="600" height="400" layout="responsive">
  <amp-img src="https://source.unsplash.com/Ji_G7Bu1MoM/600x400" width="600" height="400" layout="responsive"></amp-img>
  <amp-img src="https://source.unsplash.com/4yCXNMLP9g8/600x400" width="600" height="400" layout="responsive"></amp-img>
</amp-base-carousel>

组件属性

您可能会注意到我们有熟悉的属性,widthheightlayout 已定义。与 HTML 一样,属性在 AMP 中无处不在。但是,AMP 使用其他属性来自定义组件的行为。有些是 通用元素属性,而有些则特定于某些组件。我们添加 loop 属性并将其设置为 true,并包含更多图片

<amp-base-carousel loop="true"  width="600" height="400" layout="responsive">
  <amp-img src="https://source.unsplash.com/Ji_G7Bu1MoM/600x400" width="600" height="400" layout="responsive"></amp-img>
  <amp-img src="https://source.unsplash.com/4yCXNMLP9g8/600x400" width="600" height="400" layout="responsive"></amp-img>
  <amp-img src="https://source.unsplash.com/QrgRXH81DXk/600x400" width="600" height="400" layout="responsive"></amp-img>
  <amp-img src="https://source.unsplash.com/8QJSi37vhms/600x400" width="600" height="400" layout="responsive"></amp-img>
</amp-base-carousel>

loop 属性特定于 amp-base-carousel,有助于定义其行为。我们可以使用其他属性进一步自定义我们的轮播,例如 auto-advance!您可以在其 参考页面 上查看可用于 amp-base-carousel 的属性列表。所有组件参考文档都列出了可用的属性及其配置的行为,请参阅 AMP 组件库