加速的移动页面(AMP)由于它们的加载速度而对我非常有吸引力。
[大规模运行付费流量时,立即加载的目标网页可能会使您的投资回报率翻倍。
我正在为电子商务产品创建自定义登录页面。该页面将具有:
我习惯将[J0]包含在Jquery中,并将我的所有代码写在一个部分中。这将在DOM加载时加载...,并且一切正常。快乐的时光。
但是,阅读有关“在AMP页面中包含自定义JavaScript”的文档,感觉会非常困难。根据我所见,几乎是不可能的。
参见此处:<head>
似乎我必须为每块自定义JS创建一个标签。使用“ src”属性链接到我的JS文件。但是,只有此标记中的代码才能由JS文件执行。
此文档也指出,
AMP对每个JavaScript实施150 KB的自定义JavaScript限制页。该限制在该组件的所有组件之间共享页。如果使用库,则必须将其导入每个人组件。
jQuery大约100 KB ...如果我必须在每个https://amp.dev/documentation/guides-and-tutorials/develop/custom-javascript/标签中都包含此库,这意味着我实际上不能使用多个标签?
我允许在这个<amp-script>
标签中包括整个身体吗?
这是否意味着我必须有一个JS文件,必须在其中复制Jquery库。然后在该文件中也包含我的自定义代码吗?
据我了解的文档,您可以在需要自定义js的地方包装区域。如果您需要所有页面中的脚本,只需使用amp-script标签包装所有内容。 -我自己从未做过,但这似乎值得一试。我想知道它是否有效。
<amp-script>
考虑
初始化之前和之后,DOM内部标签应该几乎相同。
和
如果您的amp-script逻辑未执行提取,则DOM不到一秒钟的时间即可更新DOM。如果脚本在允许的窗口之外更改DOM,将导致致命错误,并且amp-script组件将终止Web Worker。终止的组件将不会再次运行。
祝你好运!