我正在尝试在OpenCart版本2.3.0.2中自动隐藏AJAX警报消息,但我无法使其正常工作。我在模板的标题文件中添加了下面的代码,因此我可以在5秒后隐藏.alert
DIV:
setTimeout(function() {
$(".alert").hide("slide", { direction: "right" }, 150);
}, 5000);
它可以正常工作,但仅用于触发的第一个警报,我必须重新加载/刷新页面才能使hide脚本再次工作!
我在做什么错?
tl; dr 您必须在$(".alert")
返回的数组上迭代。
请参阅此codepen
另外,在加载DOM后,您不应使用setTimeout
触发回调;jQuery为此具有$(document).ready()
。
javascript
$(document).ready(function(){
$(".alert").each(function(){
$(this).hide();
})
});