$('pre:contains("\n")')
将选择<pre>
包含至少一个换行符的所有内容。
如何选择所有<pre>
最后不包含换行符或只有一个换行符的内容?
什么是快速方法?
匹配
<pre>A</pre>
<pre>B
</pre>
不匹配
<pre>C
</pre>
<pre>
D</pre>
<pre>
E
</pre>
这个怎么样:
$('pre:not(:contains("\n"))')
也许简单的方法就足够了,修剪文本然后检测换行符:
var myList = $('pre').filter(function(index) {
var val = $(this).text().trim();
return val.indexOf('\n') == -1;
});
$.each(myList, function() {
alert($(this).text());
});
样本数据:
<pre>hello</pre>
<pre>great
</pre>
<pre>you
say
</pre>
<pre>
yes</pre>
<pre>
heila
</pre>
<pre>not
included</pre>
<pre>included</pre>
输出:
hello
great
yes
heila
included
现场测试:http: //jsfiddle.net/Anb6q/1/
var myList = $('pre').filter(function(index) {
var val = $(this).text();
return val.substring(0, val.length -2).indexOf('\n') === -1;
});
在这里摆弄...
编辑Michael Buen评论
这就是我得到的。
$('pre').filter(function(){
var txt = $(this).text()
return txt.substring(0, txt.length-1).indexOf('\n')==-1
}).css({'background-color':'#FFF4E8',
'border-top':'1px solid #FF6600',
'border-bottom':'1px solid #FF6600',
'padding': '1px 0 1px 0',
})