2012-05-04 2 views
5

は私がRox周りのスパンをラップするにはどうすればよいことjQueryを使用してテキストの一部をスパンでラップする方法は?ここ

FoxRox 

Fox<span>Rox</span> 

を行うにしようとしています何ですか?この場合

+0

あなたがそれを必要としますし、いくつかのより多くのコンテキストは、我々はより多くのあなたを助けることができますなぜあなたは私たちに伝えることができます。テイクはここでさらに質問をする助言です。 – gdoron

答えて

5

これはあなたの全体のDOMを検索し、各Rox<span>Rox</span>に置き換えられます:

$(':contains("Rox")').html(function(index, oldHTML) { 
    return oldHTML.replace(/(Rox)/g, '<span>$&</span>'); 
});​ 

Live DEMO

+0

私は予期せぬトークンも不利になっています:( – PhoxKiD

+0

@gdoron jsbinの不具合かもしれません。 – Sampson

+1

@gdoron jsfiddleですべてを試してみましたが、うまくいきました。 – Sampson

5

は、あなたがJavaScriptのreplace()方法使用できます。すべてのドキュメントを介してこれを置き換えるには

'FoxRox'.replace(/(Rox)/, '<span>$1</span>'); 

を、次のことを試みることができる:

$(":contains('Rox')").html(function(i,o){ 
    return o.replace(/(Rox)/g, '<span>$1</span>'); 
});​ 

注意、あなたの用語がある場合"Rox"ではなく、上記のスクリプトで変更する必要があります。

+0

DOMを変更するのは難しいことだと思います。 – gdoron

+0

私が今作業している私のウェブサイト、http://www.foxklld.site88.netを確認してください。私はあなたのコードを貼り付けましたが、それは私に何らかのエラーを与え、また 'KllD'を' Rox'に置き換えたいと思っています。だから私はこのような "FoxKllD'replace(/(KID)/、 ' Rox');'が好きです。また、Chromeのコンソールで、予期しないトークン「ILLEGAL」が表示されました。 – PhoxKiD

+0

@ user1374078しかし、ドキュメント全体ですべて置き換えたいのですか? – Sampson

関連する問題