我已经实现了这个插件https://retargeting.biz/plugins/custom在我的laravel应用程序中,我有一些问题不是插件。。。
位于标头上的脚本。。。当页面被加载时,它创建了一个对象ra和只在时需要执行它的函数
_ra.ready !== undefined
问题是只有在加载页面并发送数据时才需要执行的函数,因为脚本只运行一次。对于需要在操作(按钮等(上触发的函数,这不是问题。
例如,当用户在类别页面上输入时,需要加载此脚本。
function send_category() {
var _ra = _ra || {};
_ra.sendCategoryInfo = {
"id": 20,
"name": "Shoes",
"url": 'url_to_the_page',
"parent": false,
"breadcrumb": []
};
if (_ra.ready !== undefined) {
_ra.sendCategory(_ra.sendCategoryInfo);
}
}
我所做的是:
if (document.readyState !== 'loading') {
send_category();
} else {
document.addEventListener('DOMContentLoaded', (event) => {
send_category();
})
}
但是。。。有时
_ra.ready = undefined
因为函数正在运行,对象_ra尚未创建,函数尚未执行(_ra.sendCategory(
在这种情况下,你会怎么做?
我想用这个:
window.addEventListener('load', (event) => {
send_category();
});
但我所知道的加载事件将在所有图像和子帧都完成加载时完成。
这个事件";加载"。。。等待_ra对象创建完成???
使用
window.addEventListener('load', (event) => {
send_category();
});
似乎有效。