2013-07-20 67 views
-1

我使用jQuery刪除和淡入物品容器。此代碼將刪除並淡入div類box2。我想做什麼來淡化div class box1。而無需更改刪除鏈接到box1。jQuery刪除和淡入淡出

如果任何人都可以指出如何做到這一點,高度佔用。感謝advace。

<div class="box1"> 

<div class="box2"> 

<a href="#" id="1" class="delete">x</a> 

</div> 

</div> 

的JavaScript

<script type="text/javascript"> 
$(document).ready(function() { 
    $('#load').hide(); 
}); 

$(function() { 
    $(".delete").click(function() { 
     $('#load').fadeIn(); 
     var commentContainer = $(this).parent(); 
     var id = $(this).attr("id"); 
     var string = 'id=' + id; 

     $.ajax({ 
      type: "POST", 
      url: "delete.php", 
      data: string, 
      cache: false, 
      success: function() { 
       commentContainer.slideUp('slow', function() { 
        $(this).remove(); 
       }); 
       $('#load').fadeOut(); 
      } 

     }); 

     return false; 
    }); 
}); 
</script> 
+0

你的#load元素在哪裏? – Octopus

+0

我不明白你的意思。而無需更改刪除鏈接到box1。 – steo

回答

0

試試這個代碼:

$(function() { 
    $('#load').hide(); 

    $('.delete').click(function(){ 
     $('#load').fadeIn(); 

     $(this).parent().slideUp('slow', function() { 
      $('.delete').appendTo('.box1') 
      $(this).remove(); 
      $('#load').fadeOut(); 
     }); 

     return false; 
    }) 
}) 
0

如果將其更改爲var commentContainer = $(this).parent().parent();。它現在將以.box1爲目標。然後,您可以解開.box2:

commentContainer.slideUp('slow', function() { 
    $('.box2').unwrap(); 
    $(this).remove(); 
}); 
0

我相信你想

var commentContainer = $(this).parent().parent(); 

去.box1而不是.box2這是否解決問題嗎?

雖然只是一些評論。有效的ID應該以字母字符開頭。數字「1」無效。 'a1'會更好,或者只是'a'。由於目前已棄用,請使用ajax回調done而不是success