javascript - Yandex Metric第一次点击响应长
问题描述
该网站有Yandex Metric
<script type="text/javascript" data-skip-moving=true>
(function (d, w, c) {
(w[c] = w[c] || []).push(function() {
try {
w.yaCounterXXXX = new Ya.Metrika2({
id:XXXX,
clickmap:true,
trackLinks:true,
accurateTrackBounce:true,
webvisor:true,
trackHash:true,
triggerEvent:true
});
} catch(e) { }
});
var n = d.getElementsByTagName("script")[0],
s = d.createElement("script"),
f = function () { n.parentNode.insertBefore(s, n); };
s.type = "text/javascript";
s.async = true;
s.src = "https://mc.yandex.ru/metrika/tag.js";
if (w.opera == "[object Opera]") {
d.addEventListener("DOMContentLoaded", f, false);
} else { f(); }
})(document, window, "yandex_metrika_callbacks2");
</script>
页面加载非常快,但第一次点击非常长 1326 毫秒 这种对第一次点击的反应只发生在有很多东西(文本、图片、复选框)的页面上。这是单击屏幕截图时发生的情况
大多数情况下,在调用 Metrics 和我使用的 ym-disable-clickmap 类时,我已经将 w.calcChildrenChecksum 设置为 false 所有选项。没有任何帮助
解决方案
一般来说,问题的原因是 Webvisor 2.0。因为它适用于整页。没错,如果您的页面在 DOM 中有很多元素,则 w.calcChildrenChecksum 会加载处理器。您可以使用 Yandex.Metrika 的其他设置来解决问题。
尝试使用“旧代码计数器”和“Webvisor 1.0”。
示例在这里:
和这里
Yandex.Support 用俄语回答了我:
Вбольшинстве случаев при правильной установке код Метрики загружается асинхронно и не должен существенно влисять на скорики Увеличение времени загрузки может наблюдаться для счетчиков, у которых включен Вебвизор 2.0。Специфика его работы требует полной обработки контента сайта и в некоторых случаях может выполняться медленнее。Если ваш сайт обладает множеством контентных элементов, вы можете переключиться на Вебвизор 1.0, выбрав галочку "Устаревший код счетчика" в Настройках: https://yandex.ru/support/metrica/general/counter-general.html#other. Не забудьте переустановить код счетчика Метрики на всех страницах сайта。Если вы не используете Вебвизор при анализе данных, удостоверьтесь, что он выключен и не вызывается в коки web В свою очередь мы постоянно работаем над ускорением загрузки кода, и в следующих обновлениях кода счётчика преставим болвереставим
推荐阅读
- python-3.x - 有没有办法从下面的每一行字符串中提取“公司名称”“职位名称”和“职位位置”
- reactjs - 布尔玛没有在 Gatsby 中填充 className
- google-chrome-extension - 关闭chrome标签后保存数据的确认框?
- node.js - 我在使用 mocha 和 typescript 时遇到未定义的错误
- python-3.x - 你如何在python中显示来自外部文件的最高平均分排序的平均分数和名称,知道同一个名字可以出现多次?
- javascript - 导航栏下拉消失在 canvasjs 图表后面
- java - 在 O(n) 和 O(log n) 中以二进制表示计数 1,其中 n 是位数
- javascript - 带有可选小数的数字的正则表达式
- android-studio - Android Studio 无限搜索结果
- javascript - 解析错误:相邻的 JSX 元素必须包含在封闭标记中