异步加载一些生成的Javascript

时间:2019-02-10 16:43:27

标签: javascript wordpress asynchronous deferred-loading

我在一家小型公司工作,由于自身原因,该公司不灵活使用Wordpress上的大型主题网页进行更改。他们还使用了许多插件,加载时间超过10秒。因此,在运行分析告诉我js只是一场灾难之后,我想我应该尝试一下并检查生成的主页源代码。 他们选择的主题是Unero, ,因为我认为它适用于woocommerce。该网站是一个带有博客的小型电子商店,真的没什么花哨的,我们也使用yoast SEO,但这可能无关紧要。 我意识到这里到处都有大量的js脚本运行。 我读到您可以将所有运行设置为true。

A还了解到,由于未定义的变量和我想的其他问题,这可能导致脚本之间的中断。请注意,我是JS技术的新手,我可能不知道我真正应该问或要搜索的内容。我尽力解释我需要做什么。

  1. 有没有一种方法可以覆盖(或过载,这是什么术语 在这里?)在页脚上一些 js,在其位置上定义后 (在HEAD和BODY中),通过使用代码段将其设置为异步模式 在页脚上?这真的行得通吗?
  2. 我不想涉及任何插件常规解决方案,因为我 担心他们会破坏上面提到的东西。如果我纠正我 错了,请给我建议一下。除非解决方案是制作自定义插件,否则我猜完全可以控制。
  3. 只要它不会破坏网站,我都会接受任何建议。

我在这里而不是在Wordpress Developement或任何其他Stack Exchange论坛上询问,因为我正在寻找手工完成的解决方案,以及为什么它会起作用的解释。我真的是一个手工编写的人,如果事情做对了,我不怕深入研究。

1 个答案:

答案 0 :(得分:1)

  

有没有一种方法可以覆盖(或过载,这是什么术语   在页面上定义了一些js之后(在HEAD中)   并在BODY中),通过在页脚上使用代码段将其设置为异步模式?   这真的有效吗?

答案:是的,可能,但是同步代码也可能发生。如果插件A在做$('title').text('Title from A')之类的事情,而下一个插件在做$('title').text('Title from B'),那么它会被覆盖,无论它的同步还是异步都没关系。

  

我不想涉及任何插件通用解决方案,因为我   担心他们会破坏上面提到的东西。如果我纠正我   错了,请给我建议一下。

答案:我不确定您想做什么。这个网站的目标是什么?您想解开插件的混乱吗?这可能很困难,因为您几乎无法控制插件及其机制。

  

只要它不会破坏网站,我都会接受任何建议。

答案:一种方法是逐一禁用它们以查看原因和结果,然后尝试以这种方式清除。另一个解决方案是切换到Shopify之类的更简单的解决方案,而第三个解决方案是创建您可以更好地控制的自定义解决方案。

这是一个悬而未决的问题,因此很难为您的问题提供具体的答案或解决方案。