如何在$('div.myclass')上执行jQuery回调.remove()?

时间:2012-02-14 01:18:43

标签: jquery

我想在删除特定div后执行回调。我试过这个,但它不起作用:

$('div.myclass').remove(function(){
 alert ("div removed");                                 
});

任何人都知道如何执行这样的回调?我检查了jQuery文档中的remove(),但没有提到任何关于回调的内容。这是否意味着remove()不支持回调?

更新: 以下是对我要完成的内容的更详细说明。我有一个课堂上的课程' nojavascript'。我想只在用户没有启用javascript时显示这个div。这是代码:

$(document).ready(function() {
  $('div.nojavascript').remove(); 
  ... // additional jquery commands
});

问题:即使启用了javascript,这个div有时会在短时间内显示给用户。就好像在.remove()完成执行之前向用户显示页面一样。我试图确保用户从不看到这个div,即使是短时间内,如果启用了javascript。

3 个答案:

答案 0 :(得分:1)

使用<noscript>似乎可能会有更好的运气。这种类型的东西正是标签的设计目的。

<html>
<head>...</head>
<body>
...
<noscript>
    <div class="noscript">This doesn't display to users who have JavaScript enabled</div>
</noscript>
<div>
    <p> This displays to JavaScript and non-Javascript alike!</p>
</div>
...
</body>
</html>

您不能/不想使用<noscript>的任何特殊原因?

答案 1 :(得分:0)

这是否意味着remove()不支持回调?

是的,这意味着我害怕。

然后.... jQuery remove() callback?

答案 2 :(得分:0)

$.when($('#qwe').remove()).then(alert('qwe removed!'));