我正在尝试在OpenCart version 2.3.0.2中自动隐藏ajax警报消息,但我无法使其正常工作。我在模板的头文件中添加了以下代码,因此我可以在5秒后隐藏.alert
div:
setTimeout(function() {
$(".alert").hide("slide", { direction: "right" }, 150);
}, 5000);
它运行正常,但仅针对触发的第一个警报,我必须重新加载/刷新页面以使隐藏脚本再次运行!
我做错了什么?
答案 0 :(得分:1)
tl; dr 您必须迭代$(".alert")
返回的数组。
此外,在加载DOM后,不应使用setTimeout
来触发回调; jQuery有$(document).ready()
。
<强>的JavaScript 强>
$(document).ready(function(){
$(".alert").each(function(){
$(this).hide();
})
});