remove()方法在animate()内部不起作用

时间:2013-09-09 05:40:35

标签: javascript jquery html css jquery-animate

在我的网页中,我有一些显示用户数据的div。在某个事件中,我需要删除每个单击的div。在删除div之前我想让它更有点发烧友 所以我使用了animate方法和animate方法的内部回调,我编写了代码来从dom中删除div。 但问题是它表明无法在null上调用remove。如何在该div上运行animate方法并在其回调内部变为null。
请帮助我解决问题,并建议是否有更好的方法来解决问题。

    confirmOpen = //Holding reference of div to be removed.
    //animate method is running perfectly fine.
    confirmOpen.animate({"width":"1px","height":"1px"},500,function()
    {
       console.log(confirmOpen); //Logging null
       confirmOpen.remove();   //Showing error that remove method cannot be called on a null value.
    });  

3 个答案:

答案 0 :(得分:0)

我认为在变量 confirmOpen 中设置引用时会出现一些错误。 您无法删除空值。

答案 1 :(得分:0)

confirmOpen

confirmOpen.animate({"width":"1px","height":"1px"},500,function()
    {

会导致错误,因为该函数中没有变量声明,并且您要移除相同的confirmOpen,因此您应该只使用$(this).remove();

答案 2 :(得分:0)

confirmOpen = //Holding reference of div to be removed.

    confirmOpen.animate({"width":"1px","height":"1px"},500,function()
    {
       console.log(confirmOpen);
       $(this).remove();   
    }); 


I hope it will work but can you send js fiddle example for more effective results