2011-03-17 62 views
0

我有HTML這樣jQuery的包裹的innerHTML

<a href="#">like me on facebook</a> 

,我想換行文本的Facebook這樣的結果會是這樣

<a href="#">like me on <span class="facebook-text">facebook</span></a> 

怎麼做,在jQuery的?

回答

6
var html = $('a').html(); 
$('a').html(html.replace(/facebook/, '<span class="facebook-text">facebook</span>')); 

,如果你想替換字符串在Facebook的所有事件:

var html = $('a').html(); 
$('a').html(html.replace(/facebook/gi, '<span class="facebook-text">facebook</span>')); 
+0

did replace()是jQuery API?我在api.jquery.com尋找'replace()'的解釋,但找不到它 – GusDeCooL 2011-03-17 13:22:40

+0

@GusDe CooL,不,它是[plain'ol javascript](https://developer.mozilla.org/en/JavaScript/參考/ Global_Objects /字符串/替換)。 – 2011-03-17 13:23:16

+0

謝謝..現在它的工作:) – GusDeCooL 2011-03-17 13:56:10

1

也許你可以使用$(...)的內容()函數來訪問的子節點你的錨標籤。

http://api.jquery.com/contents/

+0

謝謝,但我需要示例代碼,它的工作 – GusDeCooL 2011-03-17 13:23:17

+0

這可能不會回答操作的問題,但它確實解決了我的問題。下面的示例應該包含整個內容,而不僅僅是文本「Facebook」:'$('a')。contents()。wrap('')' – Nathan 2012-12-12 16:54:15