JavaScript-更改某些索引上的字体颜色

JavaScript-更改某些索引上的字体颜色,javascript,html,Javascript,Html,我有这个长字符串,我希望它的一部分只用JavaScript转换成白色 例1: var string = document.getElementById("subtitle").innerHTML; //returns the string var i = string.indexOf("("); //returns 80 var j = string.indexOf(")"); //return 93 示例2:我可以得到想要的文本,但我不知道如何将其更改为白色 var string = do

我有这个长字符串,我希望它的一部分只用JavaScript转换成白色

例1:

var string = document.getElementById("subtitle").innerHTML; //returns the string

var i = string.indexOf("("); //returns 80
var j = string.indexOf(")"); //return 93
示例2:我可以得到想要的文本,但我不知道如何将其更改为白色

var string = document.getElementById("subtitle").innerHTML; //returns the string

var i = string.indexOf("(");
var j = string.substring(i, string.indexOf(")")+1); //return the exact string I want to paint white
//j.paintWhite(); how?
我希望将位置80和93之间的所有字符(或如示例#2所示选择的字符)都绘制为白色。我该怎么做呢?

如果你认为“变成白色”就是这样做的话

<span style="color:#fff">MY_TEXT_HERE</span>
MY_TEXT_此处
然后,您可以使用阵列尝试以下操作:

var string = document.getElementById("subtitle").innerHTML;
var arr1 = string.split('(');
var arr2 = arr1[1].split(')');
var finalString = arr1[0] + '<span style="color:#fff">' + arr2[0] + '</span>' + arr2[1];
var string=document.getElementById(“subtitle”).innerHTML;
var arr1=string.split(“(”);
var arr2=arr1[1]。拆分(');
var finalString=arr1[0]+''+arr2[0]+''+arr2[1];

您必须修改元素的内部Html,使其具有一个嵌套了defind样式的文本元素

var-element=document.getElementById(“subtitle”);
var htmlText=element.innerHTML;
var i=htmlText.indexOf(“”);
var j=htmlText.indexOf(“)”)+1;
var redText=htmlText.substring(i,j);
element.innerHTML=htmlText.substring(0,i)+“”+redText+“”+htmlText.substring(j);

您需要为该文本创建一个html容器,在其中可以指定样式属性

另外,不要使用变量名
字符串
,因为它是保留给语言的

为了做到这一点,我建议使用jQuery,因为它更容易一些

但如果你不想,你可以:

var text = document.getElementById("subtitle").innerHTML;
var cut = text.split("(");
var cut2 = cut[1].split(")");
var colored = cut[0] + '<span style="color:#fff;">('+cut2[0]+')</span>'+cut2[1];
document.getElementById("subtitle").innerHTML = colored;
var text=document.getElementById(“subtitle”).innerHTML;
var cut=text.split(“”);
var cut2=cut[1]。拆分(“”);
var colored=cut[0]+'('+cut2[0]+')'+cut2[1];
document.getElementById(“subtitle”).innerHTML=colored;

是否可以从某个索引将颜色更改为白色?示例:索引是40。我不知道您的要求,但为什么不在元素中使用特殊的span/div,然后直接引用它的样式属性:document.getElementById(“subtitle\u child\u that\u I\u want\u make\u white”).style.color=…@shish只要使用substring方法来实现它,给定索引+1来指出变量名的问题,我不认为您的所有答案都能很好地工作,但在我的例子中并非如此。我已经做了一个屏幕截图,我想把什么颜色变成白色。我需要这些数字在接下来的步骤中进行计算。如果我把它们涂成白色,用户就看不见了。截图:->我正试图摆脱这个“(+0.08欧元)
var text = document.getElementById("subtitle").innerHTML;
var cut = text.split("(");
var cut2 = cut[1].split(")");
var colored = cut[0] + '<span style="color:#fff;">('+cut2[0]+')</span>'+cut2[1];
document.getElementById("subtitle").innerHTML = colored;