0
我使用appendTo在DOM走動了幾個要素:的jQuery appendTo離開以前的父容器空白
jQuery('.footer-pre-home.box.s5,.footer-two.box.s5').appendTo('.footer .copyright');
這工作得很好。但是,當它們被刪除時,它們將在其前一個父節點「pre-footer」中留下一個空白字符。這阻止了我在前頁腳元素上使用css:empty psuedo類。
任何方法來解決這個appendTo?
原始的HTML低於:
<div class="pre-footer">
<div class="footer-two box s5">
<div class="textwidget">
<ul class="social flat">
<li class="twitter"><a href="http://twitter.com"></a></li>
<li class="facebook"><a href="http://facebook.com"></a></li>
<li class="google"><a href="http://plus.google.com"></a></li>
<li class="youtube"><a href="http://youtube.com"></a></li>
<li class="linkedin"><a href="http://linkedin.com"></a></li>
<li class="rssfeed"><a href="feed/"></a></li>
</ul>
</div>
</div>
</div>
的appendTo後,計算出的頁腳預HTML如下:
<div class="pre-footer">
</div>
我不能刪除節點,因爲有可能是元素它內部不是appendTo的目標。但是,在這種情況下,不是。
我在控制檯中運行它,並返回undefined。我正在使用CSS來驗證:.footer .pre-footer:empty {display:none!important} –
@ScottB嗯,我雖然使用jQuery':empty'選擇器,它不會刪除空格,它會過濾只有空格或沒有內容的元素。嘗試'$(「。pre-footer」)。filter(function(){ return!$。trim(this.innerHTML).length; })。hide();' – undefined
+1是的,修改後的代碼和使用jQuery空vs CSS空。謝謝!我在想,你正在使用jQuery trim來刪除空白節點空白,以便CSS:空工作。 –