在OpenCart上自动隐藏警报消息



我正在尝试在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();
  })
});

最新更新