setTimeout立即启动功能,而不是等待
setTimeout firing function straight away and not waiting
我对setTimeout的使用似乎是直接执行的,而不是等待5秒:
window.setTimout(getNegativeErrs(errors), 5000);
function getNegativeErrs(ers) {
for( i in errors ) {
var errobj = getByValue(dataLayer, errors[i]);
if(!errobj) {
dataLayer.push({
'event': 'negative_errors',
'unseen': errors[i],
'module': 'registration'
})
}
}
}
传递的函数必须是特定格式的吗?我真的不知道在这里编辑什么,也不知道从哪里开始查找?
您的函数getNegativeErrs()
正在立即执行,并使用其返回值作为回调。
正确的方式:
window.setTimeout(function() {
getNegativeErrs(errors)
}, 5000);
function getNegativeErrs(ers) {
for( i in errors ) {
var errobj = getByValue(dataLayer, errors[i]);
if(!errobj) {
dataLayer.push({
'event': 'negative_errors',
'unseen': errors[i],
'module': 'registration'
})
}
}
}
相关文章:
- 添加文字和评论功能更新Div
- JavaScript打印功能使日历停止工作
- 单击按钮以等待单击按钮
- React组件等待所需道具进行渲染
- 每当您在选择器内移动鼠标时,悬停功能就会重复
- 如何防止网页加载后自动启动功能
- 除修剪外的其他功能
- 悬停功能触发器
- 并行执行功能并等待其完成
- 等待Javascript网页抓取功能完成,然后再运行下一页
- 等待用户点击而不是页面加载来启动功能
- 等待ajax响应相同的功能
- 流星铁路由器等待与异步功能
- 等待执行功能,直到新的数据反映在浏览器中
- 等待某些东西停止来触发功能
- Angular等待Ajax完成服务功能
- setTimeout立即启动功能,而不是等待
- Javascript:等待几帧后再继续功能
- 功能完成后如何等待(2秒)
- 具有延时功能的输入触发器,当输入值发生变化时等待