Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 查找特定文本并添加css_Javascript_Jquery_Css - Fatal编程技术网

Javascript 查找特定文本并添加css

Javascript 查找特定文本并添加css,javascript,jquery,css,Javascript,Jquery,Css,我有这样一段文字: <li>certain text</li> 问题是该代码将整个文本变成红色。如何仅获取显示“文本”的片段并在该部分使用css?您需要更改li内容,因为浏览器只能将样式应用于元素,而不能应用于文字 你可以这样做: $('li:contains("text")').each(function(){ var licontent = $(this).html(); licontent = licontent.replace(new RegEx

我有这样一段文字:

<li>certain text</li>

问题是该代码将整个文本变成红色。如何仅获取显示“文本”的片段并在该部分使用css?

您需要更改
li
内容,因为浏览器只能将样式应用于元素,而不能应用于文字

你可以这样做:

$('li:contains("text")').each(function(){
    var licontent = $(this).html();
    licontent = licontent.replace(new RegExp("text", "g"), '<span style="color:red">text</span>');
    $(this).html(licontent);
});
$('li:contains(“text”))。每个(函数(){
var licontent=$(this.html();
licontent=licontent.replace(新的RegExp(“text”,“g”),“text”);
$(this.html(licontent);
});


小心使用
*
选择器。您需要了解它将使您获得
li
的所有父项,包括文档…

您需要更改
li
内容,因为浏览器只能将样式应用于元素,而不能应用于文字

你可以这样做:

$('li:contains("text")').each(function(){
    var licontent = $(this).html();
    licontent = licontent.replace(new RegExp("text", "g"), '<span style="color:red">text</span>');
    $(this).html(licontent);
});
$('li:contains(“text”))。每个(函数(){
var licontent=$(this.html();
licontent=licontent.replace(新的RegExp(“text”,“g”),“text”);
$(this.html(licontent);
});


小心使用
*
选择器。您需要了解它会让您成为
li
的所有家长,包括文档…

您可以这样做,但它没有经过测试:

$(function() {
    var color = $('body').text('text');
    color.css("color", "red");
});

您可以这样做,但未经测试:

$(function() {
    var color = $('body').text('text');
    color.css("color", "red");
});

请注意,使用字符串作为第一个参数的
replace
方法只会替换字符串中的第一个实例,因此如果可以有多个实例,则需要使用reglar表达式。或者使用
string.split(“replace this”).join(“with this”)
@的常见技巧。谢谢,但我宁愿只更改颜色。当我更改文本时,我的脚本会做一些它不应该做的事情,这就是为什么我只想更改颜色。@你不能只更改颜色:样式只能应用于元素,不能应用于单词。这就是为什么你需要创建这个元素的原因。我不确定,但我认为可以“找到”一个单词并将其设置为变量,然后更改变量。我想我会试试这个。我在做饼干。当我更改文本时,cookie中存储的数据将丢失。请注意,使用字符串作为第一个参数的
replace
方法仅替换字符串中的第一个实例,因此如果可以有多个实例,则需要使用正则表达式。或者使用常见的技巧
string.split(“replace this”).join(“用这个”)
@dystroy谢谢,但我宁愿只更改颜色。当我更改文本时,我的脚本做了一些它不应该做的事情,这就是为什么我只想更改颜色。@你不能只更改颜色:样式只能应用于元素,而不能应用于单词。这就是为什么你需要创建此元素。@dystroy我不确定,但我认为它是“找到”一个单词并使其成为变量,然后更改变量。我想我会尝试一下。我正在处理cookie。当我更改文本时,cookie中存储的数据丢失。它对我不起作用。我丢失了动态创建的数据,被替换为单词“text”@JaiPSah
$('body')。text('text'))
将正文的文本更改为“text”。请参阅,它对我无效。我丢失了动态创建的数据,被替换为单词“text”@JaiPSah
$(“body”)。text(“text”)将正文的文本更改为“text”。请参阅