克隆每个元素后添加换行符

Add a line break after each element is cloned

本文关键字:添加 换行符 元素      更新时间:2023-09-26
$('.footnote').clone().appendTo('#allfootnotes').append('<br>');

我在整个页面中都有一堆.footnote元素,在页面底部,我想列出页面上的所有脚注。因此,每个脚注都将克隆到#allfootnotes.我尝试在 #allfootnotes 元素中的每个.footnote之后放置一个换行符,这样它们就不会全部混在一起。

将每个.footnote克隆到#allfootnotes后,我将如何应用换行符?

这是最好的方法吗?在每个.footnote中都有 2 个 span 标签,一个用于标题,一个用于脚注内容(不知道这是否重要(。

听起来你可以使用CSS来做到这一点

#allfootnotes .footnote {
  margin-bottom: 10px;      
}

根据您的情况,您可能需要将 .footnote 设置为块级元素,并带有display: block;

演示

$('.footnote').clone().appendTo('#allfootnotes').after('<br>');

如果你使用XHTML,那么它应该是<br />

var allFootNotes = $('#allfootnotes');
$('.footnote').each(function(){
     $(this).clone().add('<br/>').appendTo(allFootNotes);
});

如果脚注与您所说的一样多,则缓存$('#allfootnotes')将减少浏览器的负载。

希望这有帮助

$('.footnote').each(function() {
    $(this).clone().add('<br/>').appendTo('#allfootnotes');
});

编辑 请看roXon的回答。这比自己遍历脚注要干净得多。