Javascript 突出显示符合特定标准的单词
下面我有一些简单的代码,但是我没有看到结果 本质上,我在一个div中有一些静态文本,其中包含Javascript 突出显示符合特定标准的单词,javascript,html,Javascript,Html,下面我有一些简单的代码,但是我没有看到结果 本质上,我在一个div中有一些静态文本,其中包含class=“container”我试图对这个div应用一个函数,以突出显示以指定字母开头的任何单词,在本例中是起始字母=“t”。然后将新文本(带高光)返回到原始div 我做错了什么 //突出显示以t开头的任何单词 功能荧光灯(文本){ text=text.split() 对于(变量i=0;i
class=“container”
我试图对这个div应用一个函数,以突出显示以指定字母开头的任何单词,在本例中是起始字母=“t”。然后将新文本(带高光)返回到原始div
我做错了什么
//突出显示以t开头的任何单词
功能荧光灯(文本){
text=text.split()
对于(变量i=0;i
这是一个简单的测试,看看函数将如何执行。
在您的示例中,您计算输出,但不实际设置输出:
<!DOCTYPE html>
<html>
<body>
<div class="container" onclick="highlighter(this)">
This is a simple test to see how the function will perform.
</div>
<script>
//highlight ANY word that starts with t
function highlighter(ev) {
var content = ev.innerHTML;
var tokens = content.split(" ");
for (var i = 0; i < tokens.length; i++) {
if (tokens[i][0] == 't') {
tokens[i] = "<mark style='background-color:red; color:white;'>" + tokens[i] + "</mark>";
}
}
ev.innerHTML = tokens.join(" ");
}
</script>
</body>
</html>
这是一个简单的测试,看看函数将如何执行。
//突出显示以t开头的任何单词
功能荧光灯(ev){
var content=ev.innerHTML;
var标记=content.split(“”);
for(var i=0;i
不带参数调用split()
将返回一个数组,其中一个元素是原始文本。您可能需要拆分(“”)
(只要您使用的是ASCII文本)。这将返回一个“字符”数组text[i]
最终将等于't'
,但text[i][0]
将不会是任何东西,因为字母没有任何进一步的细分。在进一步讨论之前,我建议您熟悉浏览器中内置的调试器;然后你可以一步一步地去看每个变量在任何时候都是什么。谢谢你的编辑和反馈。我肯定是误用了split函数(我是从python的角度考虑的,它默认在每个空格处进行分割)。即使我有它,我也从未用过。谢谢你的帮助。