有没有办法检查div的内容是否以换行符开头?如果是,则删除所有前导换行,直到第一个不是换行符。我试过了,
if ($('#div').text().substring(0, 1) == '\n'){
$('#div').text($('#div').text().replace("\n",""));
}
以上示例检查div内容是否以1换行开头。当然,你已经在这里看到了限制。 Div可以从多个新线开始。另外,我不想删除第一个正确字符后可能出现的新行。
<- must be removed
<- must be removed
.
.
.
n
a
a
a
<- must not be removed
a
a
另一种情况可能是div在没有新行的情况下开始,在这种情况下不应删除任何内容。
编辑:此外,div的内容可能很大,因此循环可能不是一个优雅的解决方案。
答案 0 :(得分:4)
答案 1 :(得分:1)
如果您需要任何空白字符(包括换行符),并且要删除div的实际内容之前,>>
$('#div').text(function(i, orig) {
updated = orig.replace(/^\s+/, '');
return updated;
});
答案 2 :(得分:0)
使用split
,然后filter
使用已形成的数组的空元素,然后使用join
重新加入
$('#div').text($('#div').text().split('\n').filter(function (e) {
return e != ""
}).join('\n'));
不可否认,这不会像你想的那样正常工作。如果有连续\n
s(在您的内容中间某处),它会将它们分成一个换行符。