我到处搜索,但我找不到同样的问题。也许我做了一个糟糕的搜索。遗憾。
这是问题,我从经典的js调用下面的函数,第一次被激活它是好的,完成,但第二次和后续的尝试都失败了,我认为FADEOUT没有被解雇,因为我有DIV留在页面上。
请告知我如何克服这个问题。
var Achtung = function(msg){
var achtung = $('<div id="achtung">'+msg+'<span class="close">x</span></div>');
$(achtung)
.css('position', 'fixed')
.css('top', '5px')
.css('display', 'none')
.css('align','center')
.css('width', '100%')
.css('margin-left', 'auto')
.css('margin-right', 'auto')
$('body').append(achtung);
$(achtung).fadeIn(1500);
var hideTimer = setInterval(hideAchtung, 3000);
$('#achtung .close').click(function(){hideAchtung();});
}
var hideAchtung = function(){ $('#achtung').fadeOut(500); }
我在javascript中调用函数
Achtung('Message here...');
答案 0 :(得分:0)
只需将您的代码更改为:
$(document).on('click','#achtung .close',function(){hideAchtung();});
答案 1 :(得分:0)
此代码解决了这个问题。
var hideAchtung = function(){ $('#achtung').fadeOut(500, function(){$('#achtung').remove();}); }