jQuery:无法淡出以前褪色的元素

时间:2010-12-18 17:44:18

标签: javascript jquery settimeout

我想在顶部显示通知 - 持续2秒 - 告诉我哪个版本的jQuery& jQuery UI已加载。不幸的是,我似乎无法在以后隐藏它。

我的代码

$('<div>jQuery v' + jQuery.fn.jquery + ' and jQuery UI v' +  jQuery.ui.version + ' loaded.</div>')
.addClass('ui-state-highlight').prependTo('body').hide(0, function() {
  $(this).fadeIn(500, function() {
    setTimeout(function() {
      $(this).fadeOut(500, function() {
        $(this).remove();
      });
    }, 2000);
  });
});

jQuery Lint说我做错了什么 - 这是真的 - 但我不知道怎么做正确的方法。

1 个答案:

答案 0 :(得分:1)

这可能是范围问题。尝试:

  $(this).fadeIn(500, function() {
    var parentContext = $(this);
    setTimeout(function() {
      parentContext.fadeOut(500, function() {
        $(this).remove();
      });
    }, 2000);
  });