Javascript 更改(文档)上受正则表达式影响的字符串的颜色。准备好了吗
所以我想在这里完成的是,改变受某些正则表达式影响的单词的颜色Javascript 更改(文档)上受正则表达式影响的字符串的颜色。准备好了吗,javascript,jquery,Javascript,Jquery,所以我想在这里完成的是,改变受某些正则表达式影响的单词的颜色 $(document).ready(function(){ container = $("#modal_container section").text(); hashtags = /\#\w+/g; var container_hash = container.match(hashtags); $(container_hash).css({'color':'red'}); //We're grabbing t
$(document).ready(function(){
container = $("#modal_container section").text();
hashtags = /\#\w+/g;
var container_hash = container.match(hashtags);
$(container_hash).css({'color':'red'});
//We're grabbing the words, but how can I change the color?
alert(container_hash);
});
这里有一把小提琴使它更清楚
谢谢您不能更改文本节点/文本的颜色,您应该使用元素包装匹配的文本,然后设置该元素的样式
$("#modal_container section p").html(function(_, html) {
return html.replace(/(\#\w+)/g, '<span class="red">$1</span>');
});
$(“#modal_container section p”).html(函数(#,html){
返回html.replace(/(\\\\\w+)/g,$1');
});
$(函数(){
var container=$(“#modal#u container section”);
var htmlWrappedHashtags=container.html();
html(htmlWrappedHashtags);
$(“.red”).css({'color':'red'});//或者更好:在css中包含“.red{color:red;}”
});
这类功能符合您的要求(或者应该是一个很好的例子):
$(文档).ready(函数(){
var text=$(“#模态_容器”).html();
var myRegExp=new RegExp(“\\\\\w+”,“gi”);
var newtext=text.replace(myRegExp,$&');
$(“#空”).html(新文本);
});
#作品
#设计工作
甚至不接近
您不能随意选择某个元素的某些文本来更改单个单词的颜色。你需要把每个单词都用span元素包起来,然后改变每个span的颜色。谢谢,这就可以了。但是,跨度内的1美元意味着什么?我只是好奇…@Aaron不客气,这指的是在正则表达式的第一个()
中由模式选择的字符串。比我的要优雅得多。。保存以备将来参考:)这同样有效,但我接受了前面的答案。回答得很好:)@Aaron:是的,我比他慢。前面的答案还有一个提琴和一个文字解释,所以很公平:)
$(function(){
var container = $("#modal_container section");
var htmlWrappedHashtags = container.html().replace(/\(#\w+)/g, '<span class="red">$1</span>');
container.html(htmlWrappedHashtags);
$(".red").css({'color':'red'}); // or better: include ".red {color: red;}" into your CSS
});
<script type="text/javascript">
$(document).ready(function(){
var text = $("#modal_container").html();
var myRegExp = new RegExp('\\#\\w+','gi');
var newtext = text.replace(myRegExp,'<span style="color:red;">$&</span>');
$("#empty").html(newtext);
});
</script>
<div id="modal_container">
#works<br />
# Desnt Work<br />
Not Even Close<br />
</div>
<div id="empty" style="margin-top:30px;">
</div>