AMP

重要事項:此文件不適用於您目前選取的格式 廣告

amp-action-macro

實驗性

描述

建立可重複使用的動作。

 

必要指令碼

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

amp-action-macro 組件允許建立可重複使用的動作。

用法

amp-action-macro 建立您可以根據需要重複使用的 AMP 動作巨集。每個動作巨集都需要一個 id 和要 execute 的動作。您可以透過其 id 呼叫動作巨集,並傳遞參數來改變其行為。

範例

<amp-action-macro
  id="closeNavigations"
  execute="AMP.setState({nav1: 'close', nav2: 'close})"
></amp-action-macro>
<button on="tap:closeNavigations.execute()">Close all</button>
<div on="tap:closeNavigations.execute()">Close all</div>
<!--
  You can provide arguments in the macro.
-->
<amp-carousel id="carousel" ...>...</amp-carousel>

<amp-action-macro
  id="carousel-macro"
  execute="carousel.goToSlide(index=foo), carousel.goToSlide(index=bar)"
  arguments="foo, bar"
></amp-action-macro>
<button on="tap:carousel-macro.execute(foo=1, bar=2)">
  Go to slide 1 then 2
</button>

屬性

id

用於唯一識別動作。此 id 在動作調用中被引用。

execute

要調用的動作。此處允許任何有效的 amp 動作

<amp-action-macro
  id="navigate-action"
  execute="AMP.navigateTo(url='http://www.ampproject.org')"
></amp-action-macro>

<amp-action-macro
  id="refresh-amp-list"
  execute="ampList.refresh()"
></amp-action-macro>
<amp-list id="ampList" src="...">...</amp-list>

<button on="tap:navigate-action.execute()"></button>

<button on="tap:refresh-amp-list.execute()"></button>

arguments

用於定義可在呼叫的調用中使用的參數,並在 amp 動作巨集呼叫中替換。

需要更多協助嗎?

您已經讀過這份文件很多次了,但仍然沒有解答您的所有問題嗎? 也許其他人也有同樣的感受:在 Stack Overflow 上向他們尋求協助。

前往 Stack Overflow
發現錯誤或缺少功能嗎?

AMP 專案非常鼓勵您的參與和貢獻! 我們希望您能成為我們開源社群的長期參與者,但我們也歡迎一次性的貢獻,針對您特別感興趣的問題。

前往 GitHub