0

我正在尝试在OpenCart 版本 2.3.0.2中自动隐藏 ajax 警报消息,但我无法使其正常工作。我在模板的头文件中添加了下面的代码,这样我就可以.alert在 5 秒后隐藏 div:

setTimeout(function() {
    $(".alert").hide("slide", { direction: "right" }, 150);
}, 5000); 

它工作正常,但仅适用于触发的第一个警报,我必须重新加载/刷新页面才能使隐藏脚本再次工作!

我究竟做错了什么?

4

1 回答 1

1

tl; dr您必须迭代由返回的数组$(".alert")

看到这个 CodePen

此外,您不应该setTimeout在 DOM 加载后触发回调;jQuery$(document).ready()可以做到这一点。

JavaScript

$(document).ready(function(){
  $(".alert").each(function(){
    $(this).hide();
  })
});
于 2017-03-08T11:53:25.877 回答