2011-12-01 80 views
2

这是一篇来自这里的帖子的后续>How to "fadeOut" & "remove" a div in jQuery? - 但我们已经两年了,而不是挖掘出来,这是有道理的做一个新的职位。JQuery FadeOut /删除

我与它玩耍了这个工作(内嵌的JQuery)

<a onclick='$("#alert_top").fadeOut(300, function(){ $(this).remove(); });' class="alert_topClose">Link</a> 

去掉格 “alert_top”。但内联链接不整洁。

试图达到同样的效果,这不起作用(JQuery的+链接)

$(".alert_topClose").click(function(){ 
    $("#alert_top").fadeOut(300, function(){ 
     $(this).remove(); 
    }); 
}); 

与链接

<a class="alert_topClose">Link</a> 

任何帮助,为什么将不胜感激。我看不出有什么问题。

+1

jQuery运行后你不追加链接吗?在这种情况下,您应该使用on()(http://api.jquery.com/on/)而不是click()。 – Filip

+1

@Filip Yup,或者只有当元素根据Shankar的答案可用时才使用'.click()'。 –

回答

5

确保您正在执行$(document).ready()$()中的上述代码。如果元素在jQuery试图获取它时不可用,则它无法附加事件处理程序。试试这个

$(function(){ 
    $(".alert_topClose").click(function(){ 
    $("#alert_top").fadeOut(300, function(){ 
     $(this).remove(); 
    }); 
    }); 
}); 
+0

谢谢,绝对感到愚蠢的没有意识到这一点! – Andy