所以,这可能是一个简单的问题,但我的jQuery技能还不是那么好(还)。我试图在网页上定位特定单词并为其添加样式。我试图定位的单词在页面上出现多次。我搜索了一些,发现了这个:
<script>
var divContent = document.getElementById("styled").innerHTML;
divContent = divContent.replace("Bevestigd","<span class='styled'>Bevestigd</span>");
divContent = divContent.replace("Geannuleerd","<span class='styled-r'>Geannuleerd</span>");
divContent = divContent.replace("Pending","<span class='styled-p'>Pending</span>");
document.getElementById("styled").innerHTML = divContent;
</script>
这是有效的,有点......它只针对第一次遇到这个词并且不会重复它。我找到了许多代码来定位页面上的一个单词,但是这个代码看起来效果最好......有没有可以帮助我的东西?
我缺少foreach
功能吗?
我也试过这段代码:
$('body').html(
function(i,h){
return h.replace(/(Nike)/g,'<span class="nike tm">$1</span>');
});
这看起来有点简单,但是没有用......也许某人有这个或其他的片段?
答案 0 :(得分:0)
这是你在jquery上完成的js代码。看看这个jsfiddle
$('#styled').html(function(i,v){
v=v.replace(/Bevestigd/g,'<span class="styled">Bevestigd</span>');
v=v.replace(/Geannuleerd/g,'<span class="styled-r">Geannuleerd</span>');
v=v.replace(/Pending/g,'<span class="styled-p">Pending</span>');
return v;
});
这是通过正则表达式完成的。 我们可以进一步扩展它。
例如。要使搜索不区分大小写,请使用/Bevestigd/gi
而不是/Bevestigd/g
。