这是我的代码,这条消息来自动态
<div class="left">6 item(s) - Page 1 of 3 </div>
需要改变
<div class="left"> <span>6</span> item(s) - Page <span>1</span> of <span>3</span> </div>
任何的想法 ?
var div = $('.left');
div.html(div.html().replace(/(\d+)/g, '<span>$1</span>'));
用“空格”分割文本。您将获得项目数组。拿索引,我想它总是一样的,并在上面加上你的“跨度”。
这对我有用。我只是检查一个单词是否是一个数字。如果是的话,我把它包在一个span
var left = $('.left');
var html = left.html().split(' ');
for(var i=0,len=html.length;i<len;i++){
if(!isNaN(html[i]) && html[i]!=''){
html[i] = '<span>' + html[i] + '</span>';
}
}
left.html(html.join(' '));
使用 jQuery 自带的隐式循环来重置每个匹配元素的 html。
$(".left").html(function(i,v){
return v.replace( /(\d+)/g, "<span>$1</span>" );
});
小提琴:http: //jsfiddle.net/jonathansampson/gEYEE/