我们的Google跟踪代码管理器正在我们的网站上运行。我曾经将它以及其他一些非紧急脚本放在页面加载时间为3.5秒的javascript“ setTimeout”中,这是我用来在许多性能测试工具上提供出色性能得分的技巧。但是,由于setTimeout的延迟,正在运行的Google Optimize也无法在我们的网站上进行验证-仅当它在页面加载时运行且没有计时器延迟时才起作用。
将GTM移出超时后,它的表现得分从大约90下降到20到40之间。
我了解这可能是由于GTM中加载了什么内容,但我无法在其中不加载其中的某些项。
我想知道在需要GTM和Google优化页面加载的情况下,是否还有其他方法可以提高页面速度性能。我们网站上的大多数其他性能项目都已经过优化,这就是为什么这种下降如此惊人的原因。
香港专业教育学院试图将此GTM标签移动到页脚,并使用window.onload将其设置为加载,但运气不佳。另外,它已经使用异步设置。
这是我现在设置的设置,但是却影响了性能。
(function () {
var e = document.createElement('script');
e.async = true;
e.src = 'https://www.googletagmanager.com/gtag/js?id=UA-###';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(e, s);
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', 'UA-###', {'optimize_id': 'GTM-###'});
}());
最佳答案
您可以使用GTM来利用页面上的各种触发器,并将不同的标签链接到这些事件。初始化GTM时,将启动页面视图触发器。加载页面时将启动DOM触发器,而加载所有资源时将启动“窗口加载”触发器。您可以使用它们推迟非时间紧迫的标签,脚本和工具的启动。有关这些触发器的更多详细信息,请参见此support article。
关于javascript - 安装Google跟踪代码管理器后如何修复网站性能?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56979397/