Javascript 使用JS数组突出显示特定类中的单词
给定特定类的div,我想突出显示包含关键字的JS数组中存在的单词 例如:Javascript 使用JS数组突出显示特定类中的单词,javascript,arrays,highlight,word,Javascript,Arrays,Highlight,Word,给定特定类的div,我想突出显示包含关键字的JS数组中存在的单词 例如: var cars = ["hello", "when", "why"]; <p class="highlighted">How are you when</p> <p>How are you</p> var cars=[“你好”、“什么时候”、“为什么”]; 当您 你好吗 我试过了,但它突出显示了整个页面上的文字,但我想 仅限特定类别 使用document.g
var cars = ["hello", "when", "why"];
<p class="highlighted">How are you when</p>
<p>How are you</p>
var cars=[“你好”、“什么时候”、“为什么”];
当您
你好吗
我试过了,但它突出显示了整个页面上的文字,但我想 仅限特定类别 使用
document.getElementsByClassName(“highlighed”)
,这将返回仅具有此特定类的htmlcollection
下面的代码段可能很有用。请添加注释以进行说明
var cars=[“你好”、“什么时候”、“为什么”、“是”];
//获取具有此特定类的dom
var classes=document.getElementsByClassName(“highlighed”);
//将集合转换为数组以使用数组方法
//forEach是数组方法
Array.prototype.slice.call(document.getElementsByClassName(“highlighed”)).forEach(函数(项){
//获取innerHTML并删除空白,然后从中创建一个数组
var getText=item.innerHTML.trim().split(“”);
//迭代这个新创建的数组
forEach(函数(项2,索引){
//检查是否有任何文本与cars数组匹配
if(车辆索引(项目2)>-1){
//用dom元素替换新创建的数组中的元素
getText[index]=“”+item2+“”
}
});
//使用join创建字符串数组
item.innerHTML=getText.join(“”);
})
.lightText{
颜色:绿色;
}
你什么时候
你好吗
我已经试过了,但它突出显示了整个页面上的单词,但我只想在特定的课堂上