转换 span 元素中 textNode 的子字符串



我有这个问题:

使用一些 textNode,我需要转换 span 元素中的一些子字符串。有没有jquery函数来处理这个问题?还是JavaScript方法?

<p>---------------------Source---------------------</p>
<div id="source">
abc def ghi google ljm microsoft alpha beta
</div>
<p>----------------------Goal----------------------</p>
<div id="goal">
abc def ghi <span>google</span> ljm <span>microsoft</span> <span>alpha</span> <span>beta</span>
</div>

(function( $ ) {
$.fn.spanIt = function(_array) {
var html=this.html();
for(var key in _array){
	 html=html.replace(new RegExp(_array[key],"g"), '<span>'+_array[key]+'</span>');
}
this.html(html);
return this;
};
})( jQuery );
$('#source').spanIt(['google','microsoft', 'alpha', 'beta']);
console.log($('#source').html());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<p>---------------------Source---------------------</p>
<div id="source">
abc def ghi google ljm microsoft alpha beta
</div>
<p>----------------------Goal----------------------</p>
<div id="goal">
abc def ghi <span>google</span> ljm <span>microsoft</span> <span>alpha</span> <span>beta</span>
</div>

最新更新