AMP如何从带有链接的链接中动态获取href

时间:2019-04-17 23:16:10

标签: javascript html amp-html

我处于一种情况下,我想从 AMP网页规范网址中获取 href ,并将其添加到 AMP按钮,在该按钮上,点击点击,事件将打开一个新页面,并带有规范的URL。

我想通过代码动态地做到这一点。

我可以使用amp-binding,但是我不想在规范URL中添加任何amp-binding。

这是我具有规范网址的AMP代码,要在点击后点击导航。

注意:在AMP中,您点击一个按钮,然后触发操作,这与 HTML 不同,您会说点击< / strong>。

有人会知道如何做吗,请告诉我如何做?

<link rel="canonical" href="https://mysaleswebsite.com/salepage.php"/>

<div align="center" class="img-wrapper">
	<amp-img on="tap:AMP.navigateTo(url='GET_URL_FROM_CANONICAL_LINK#productX', target='_blank', opener=true)" src="img/salesbuttonpicture.jpg" height="50" width="100" alt="Sales Page">
	</amp-img>
</div>

1 个答案:

答案 0 :(得分:1)

我要做的第一件事是给相应的标签ID。

<link id="canonicalUrl" rel="canonical" href="https://mysaleswebsite.com/salepage.php"/>
<amp-img id="ampButton" src="img/salesbuttonpicture.jpg" height="50" width="100" alt="Sales Page"></amp-img>

然后,您可以引用这些元素ID的属性来获取并相应地分配URL。

<script>
    const canonicalUrl = document.getElementById('canonicalUrl').href;
    document.getElementById('ampButton').setAttribute("on", "tap:AMP.navigateTo(url='" + canonicalUrl + "#productX', target='_blank', opener=true)'")
</script>

我对AMP一无所知,或者这会导致无法预料的任何事情。