问题标签 [google-amp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1148 浏览

html - AMP:切换 CSS 类

我正在生成一个 amp 模板,并且我有一个按钮可以切换amp-sidebar的可见性。代码如下:

侧边栏按预期切换。但是,我也希望根据状态(打开或关闭)更改显示的图标。

我有两个班级这样做:

  • button .close (汉堡菜单图标)

  • 按钮 .open(十字)

共享类“图标”应该在两者之间保持不变。我还想保留“tap:sidebar1.toggle”,这样菜单仍然会切换。

0 投票
3 回答
4210 浏览

javascript - 如何处理 AMP 的 CORS

我有一个页面,用于amp-list使用 JSON 文件动态列出产品。我的目录结构如下:*root*/amp/product-name/然后在product-name目录中我有一个index.html带有 AMP HTML 和一个products.json包含我在页面上显示的产品数据的目录。如果我直接访问该页面,一切都会按预期工作: https ://example.com/amp/product-name/

当我从 ampproject.org CDN 访问时,问题就出现了。

这是实际页面,如果您访问控制台,您会看到 CORS 错误。我该如何处理?文档不清楚如何准确处理,只是一个非常模糊的概述,所以对于新手来说这对我来说没有意义,我不能凭直觉知道如何去做。我知道我需要某种类型的请求处理程序,这部分是通过从 AMP 自己的 app.js 中复制代码来完成的,它们链接到他们的文档中。内amp-list我之前让 src 直接指向 JSON 文件的元素中,但现在我看到我需要指向一个处理程序(如 JS 文件),然后让处理程序设置请求标头,然后输出正确的 JSON .

这是我为请求处理程序提供的内容:

这就是我用于 HTML 的内容。

https://www-perfectimprints-com.cdn.ampproject.org/c/s/www.perfectimprints.com/amp/trick-or-treat-bags/index.html

0 投票
0 回答
116 浏览

html - 具有相同页面的 Amp 页面实现

我正在尝试使用 shopify 实现 AMP 页面。Shopify 不提供服务器端代码。这是一个托管解决方案。所以我不能从服务器端重定向我的页面,除非它给我 404 错误。

假设我有这个产品 URL

https://securecod3.myshopify.com/products/3-4-baseball-tee

我想做这个产品的AMP页面。我可以使用 '?view' 查询字符串设置两个不同的 HTML。因此,我使用此 URL 创建了此页面的另一个 AMP 版本

https://securecod3.myshopify.com/products/3-4-baseball-tee?view=amp

我有两个问题。

  1. 如果您没有服务器端控制,这是使用 AMP 页面的正确方法吗?
  2. 我在常规页面中使用此代码进行放大器重定向

    rel="amphtml" href="https://securecod3.myshopify.com/products/3-4-baseball-tee?view=amp"

以及 AMP 页面中的这段代码。

它会起作用,或者我需要在这里进行一些更改。请在这里指导我。

0 投票
1 回答
179 浏览

google-tag-manager - Google 跟踪代码管理器 (AMP) 上的自定义图片

我需要将自定义脚本添加到我的 AMP GTM 容器中。

我们有一个用于 Facebook 活动。对于我们正在使用的自定义图像 URLhttps://www.facebook.com/tr?id=[MY_ID]=PageView&noscript=1

我需要为 Pardot 做类似的事情。

我们还有其他类型的跟踪,我希望有一个自定义图像,以便我们可以在 GTM 容器中执行所有操作。

这可以像我做facebook一样做吗?有这样做的标准方法吗?添加查询参数?

任何帮助/指导表示赞赏

0 投票
1 回答
440 浏览

amp-html - 在实施 amp update-cache 时将 ampproject URL 重定向到原始站点

我正在尝试实现 amp 更新缓存,但在访问“apikey.pub”amp-project URL 时遇到问题。

重定向到

我也尝试

它显示错误:

我已经把我的公钥放在了www.example.in/.well-known/amphtml/apikey.pub

请帮我解决这个问题。

0 投票
1 回答
269 浏览

javascript - 如何在 AMP 状态下存储的字符串中动态添加新行?

我正在学习使用 Accelerated Mobile Pages。我想amp-state在用户按下按钮时向存储在 中的字符串添加新行和一些文本内容。所以我试过这个:

不幸的是,它似乎以某种方式逃脱了\角色。所以我真的进入Some text\nSome another texttextarea.

我已经尝试过String.fromCharCode等等,但在 AMP 中是被禁止的......被这个卡住了。

我找不到关于这个用例的太多文档,所以在这里问:有没有办法amp-state在用户交互中动态地向字符串中添加一个新行,存储在 , 中?

0 投票
1 回答
1343 浏览

amp-html - AMP 在 Show More 上显示加载指示器

我按照这个示例在 AMP 上实现了“显示更多”操作。它工作得很好,但是当我单击按钮时,它没有显示任何内容,让用户知道页面正在加载。

我的后端不是特别快,所以它看起来直到最终加载时才起作用。

演示中它也没有任何东西,但它非常快。

有什么可以做的吗?即使它只是禁用按钮。我没有在列表或表单上看到任何类更改,以便在 CSS 上使用它们。

这是我的代码:

它只是示例中的一个,有一些命名更改。

0 投票
1 回答
2348 浏览

anchor - AMP 页面中的锚标记重新加载整个页面

我在 AMP 页面上有以下超链接,它是指向页面下方锚点的链接:

<a href="https://www.example.com/venues/amp#party">party</a>

锚标签也存在: <a name="party"></a>

现在,当用户在 URL 上https://www.example.com/venues/amp并单击超链接时,整个页面会重新加载并显示https://www.example.com/venues/amp#party

我不希望页面重新加载,我只想像在普通网页中一样跳转到锚标记,那么为什么会发生这种情况?在 Windows 10 上测试 Chrome。

0 投票
3 回答
634 浏览

javascript - 处理 Laravel API 时如何设计路由而不是返回 Laravel 视图?

到目前为止,我一直在构建从后端返回视图或模板的 Laravel 和 Django 应用程序。到目前为止,一切都很好。

但是,我现在正在构建一个从前端AMP代码调用的 Laravel API 。

我在 Laravel 中以旧方式执行此操作:从web.php

或者我可以从控制器返回视图。

但是,如果 Laravel 应用程序是返回 JSON 的 API,我该如何设计 URL?

基本上,如果有人点击主页上的链接,应该将他带到用户个人资料,请说:

我将在哪里决定这个 URL 的外观以及调用哪个端点?

0 投票
1 回答
302 浏览

php - 使用 PHP 在 html 字符串中删除 AMP 页面的自定义标签

我在编写正则表达式方面不是那么好,所以我寻求帮助。

我有我的页面的 html 字符串。我想将 html 字符串转换为 Google AMP 兼容页面。我想在其中替换一些自定义 html 标签。

并且输出应该只有This string explains DOS.

我的 html 字符串中有几个字符串,从我尝试通过为每个按预期工作的标签<define:单独编写来删除它们:preg_replace

等等

我尝试了以下方法但没有奏效:(

我想要通用的解决方案。请帮忙。

先感谢您。