javascript - 在 AMP 中包含自定义 JavaScript 的最佳方式

标签 javascript amp-html

我阅读了有关脚本标记的所有文档,但找不到如何在 AMP HTML 中包含自定义 JavaScript。

我知道<script>标签是禁止的,除非它的类型是 application/ld+json .

有默认的 AMP HTML 运行时组件和扩展组件,其中包含不同组件的特定表单,但我找不到自定义 JavaScript 的特定表单。

这是我想在 AMP HTML 中包含的脚本标签;

<script src="https://arifkarim.com/widget/layouts/global/js/legaltext.js"></script>

最佳答案

AMP 的全部意义在于只允许一部分网络技术阻止您的页面变慢。

Javascript 通常是导致网站速度慢的原因,因此 AMP 页面不允许它们(AMP 脚本本身除外),尽管他们试图用专门编写的 amp 组件来填补这一空白,这些组件不会很慢。

因此,如果您想使用 Javascript,您有多种选择:

  • 不要使用 AMP。没有人强制你这样做。
  • 从您的 amp 文档中删除脚本标签,并在没有该功能的情况下继续使用。
  • 找到一个与您的 JavaScript 功能相同的 amp-component 并改用它。不知道什么是legaltext.js,我猜它的名字会显示一些法律文本,比如cookie通知,所以也许amp-user-notification小部件会起作用吗?
  • amp iframe 中使用您的 Javascript .这些在 amp 页面中是允许的,但可能会以较低的优先级加载,以确保它们不会减慢主页速度。
  • 关于javascript - 在 AMP 中包含自定义 JavaScript 的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36035733/

    相关文章:

    javascript - 如果有足够的空间,D3 将弧形标签放在饼图中

    javascript - get_postBackElement() 始终未定义

    javascript - 使用 Dojo 需要一系列模块的正确方法

    javascript - 在文本框中搜索不区分大小写的字母

    caching - 如何从 Google 搜索禁用 AMP 缓存?

    javascript - AMP HTML 文件无法呈现,因为 https ://cdn. ampproject.org/robots.txt 设置为禁止

    javascript - HTML5 导出按钮不工作,除了复制按钮

    html - 将 font-awesome 链接到 amp 页面

    amp-html - 表单提交失败::响应必须包含 AMP-Access-Control-Allow-Source-Origin header ​

    amp-html - AMP 列表 - 如果我们没有收到 API 的响应,如何删除空白?