2011-05-13 12 views

答えて

6
var h3 = $('h3'); 
var text = h3.text().split(' '); 

for(var i = 1, len = text.length; i < len; i=i+2) { 
    text[i] = '<span>' + text[i] + '</span>'; 
} 
h3.html(text.join(' ')); 

http://jsfiddle.net/H5zzq/

または

var h3 = $('h3'); 
var text = h3.text().split(' '); 

$.each(text,function(i,val) { 
    if(i % 2) { 
     text[i] = '<span>' + val + '</span>'; 
    } 
}); 
h3.html(text.join(' ')); 

http://jsfiddle.net/H5zzq/1


は、私は1つがあるたびにインクリメントされoffset変数を作成しました遭遇した。

var h3 = $('h3'); 
var text = h3.text().split(' '); 
var offset = 0; 

for(var i = 1, len = text.length; i < len; i++) { 
    if(text[i] === '&') { 
     offset++; 
    } else if((i-offset) % 2) { 
     text[i] = '<span>' + text[i] + '</span>'; 
    } 
} 
h3.html(text.join(' ')); 

http://jsfiddle.net/H5zzq/3

+1

私はそれをやっていた正確な方法:[JSフィドルデモ](http://jsfiddle.net/davidThomas/buNYU/)。 +1 :) –

+0

非常にいい私はこの1つのことを余儀なくされていることができますそれは可能性がありますそれは "&"の後に単語が "&"の後に "&"がラップされている場合可能性があります – nokiko

+0

@nokiko:カウントから '&'を除外するには? – RightSaidFred

0

あなたはでそれを行うことは理解されるであろう

<h3>great <span>Prices</span> great <span>Service</span></h3> 

(各2語)最初に<h3>要素のテキストを取得し、次に文字列を配列に分割し、ループをforループ内で実行し、イテレータiが偶数の場合は、現在の単語にspanというタグを追加します。次に、文字列を再構築し、<h3>タグのtextプロパティとして挿入します。あなたがあなたのコメントに要求されるように&に対処するための

関連する問題