2013-03-04 195 views
0

我一直在四處尋找這個div是順利,但我還沒有找到它,我有2周的div表TDS:破壞與jQuery

__________ __________ 
|   | |   | 
| Div 1 | | Div 2 | 
|   | |   | 
|_________| |_________| 

我是爲了降低DIV1的寬度,而漸行漸遠的內容並在最後銷燬它,然後我想讓它重新出現在div2上,這樣我就可以發佈不同的內容。

+3

這是一些偉大的HTML。 – 2013-03-04 12:39:16

+1

您應該創建一個示例,也許使用[JSFiddle](http://jsfiddle.net/),這樣每個人都可以編輯您的解決方案以獲得您的意見結果(並幫助您)。 – Eich 2013-03-04 12:41:55

+0

http://jsfiddle.net/Kktvy/這裏我們去 – user2131736 2013-03-04 14:08:59

回答

1

你可以使用jQuery的animate函數。

$('#div1').stop().animate({ 
     width:0, 
     opacity:0 
    }, 1000, function() { 
     $(this).remove(); 
    }); 

這首先呼叫stop()停止任何現有的動畫。然後在1000毫秒內將元素的寬度和不透明度設置爲0。動畫完成後,終於在#div1上調用remove()

如果您希望它在重新出現後立即致電remove()是不必要的。你會想在這種情況下使用appendTo()

... 
    }, 1000, function() { 
     $(this).appendTo($(this).parent()); 
     /* Remember that the width and opacity are still 0 here, so you'll need to revert the animation when re-displaying it */ 
    }); 

這是假設你的HTML標記是沿着線的東西:

<div> 
    <div id="div1"></div> 
    <div id="div2"></div> 
</div> 

這裏是一個JSFiddle demo

+0

謝謝!它們都在td元素中,而div1包含我不想手動刪除的其他元素。 – user2131736 2013-03-04 13:21:34