求代码 查收例句中与文本框相同的单词并改成红色显示

flayying 2020-01-08 08:37:39
做ANKI用的,
原代码是这样的:
function highlight(text)
{

inputText = document.getElementById("inputText")
var innerHTML = inputText.innerHTML
var index = innerHTML.indexOf(text);
if ( index >= 0 )
{
innerHTML = innerHTML.substring(0,index) + "<span class='highlight'>" + innerHTML.substring(index,index+text.length) + "</span>" + innerHTML.substring(index + text.length);
inputText.innerHTML = innerHTML
}

}
highlight('{{单词1}}');

</script>
前面调用没问题,后面改个ID号再用这个不起作用,不知道问题出在哪里,求救,谢谢。
...全文
97 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
天际的海浪 2020-01-08
  • 打赏
  • 举报
回复
引用 9 楼 flayying 的回复:
前一句正常,后面这个例句,怎么弄都没反应了,一样的代码
你是定义了两个highlight()函数吗?函数重名当然不行了。 把id通过参数传给函数。用一个函数就可以。

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
	<title></title>
<style type="text/css">
.highlight {
	color: red;
}
</style>
</head>
<body>
<div id="ff" >qweabcghj</div>
<div id="ee" >123456789</div>
<script>
function highlight(text,id)
{
	var inputText = document.getElementById(id);
    var innerHTML = inputText.innerHTML;
    var index = innerHTML.indexOf(text);
    if ( index >= 0 )
    { 
        innerHTML = innerHTML.substring(0,index) + "<span class='highlight'>" + innerHTML.substring(index,index+text.length) + "</span>" + innerHTML.substring(index + text.length);
        inputText.innerHTML = innerHTML;
    }
}
highlight('abc',"ff");
highlight('567',"ee");
</script>

</body>
</html>

flayying 2020-01-08
  • 打赏
  • 举报
回复
前一句正常,后面这个例句,怎么弄都没反应了,一样的代码
flayying 2020-01-08
  • 打赏
  • 举报
回复
flayying 2020-01-08
  • 打赏
  • 举报
回复
后面调的是另外一句,你写的这个填上去没反应
天际的海浪 2020-01-08
  • 打赏
  • 举报
回复
引用 5 楼 flayying 的回复:
第1次用没问题,后面再调没反应了
再次调用时要先把上次添加的span标签删掉 var innerHTML = inputText.innerHTML.replace("<span class=\"highlight\">","").replace("</span>","");
flayying 2020-01-08
  • 打赏
  • 举报
回复
第1次用没问题,后面再调没反应了
天际的海浪 2020-01-08
  • 打赏
  • 举报
回复
正常啊

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
	<title></title>
<style type="text/css">
.highlight {
	color: red;
}
</style>
</head>
<body>
<div id="ff" >qweabcghj</div>
<script>
function highlight(text)
{
	var inputText = document.getElementById("ff");
    var innerHTML = inputText.innerHTML;
    var index = innerHTML.indexOf(text);
    if ( index >= 0 )
    { 
        innerHTML = innerHTML.substring(0,index) + "<span class='highlight'>" + innerHTML.substring(index,index+text.length) + "</span>" + innerHTML.substring(index + text.length);
        inputText.innerHTML = innerHTML;
    }
}
highlight('abc');
</script>
</body>
</html>
flayying 2020-01-08
  • 打赏
  • 举报
回复
第一次这样调 用没问题,后面一样的代码,不 起作用了
<p id="inputText" class="sentence"><span class="quote"></span> {{句子}}<span class="quote"></span></p>

<script>

function highlight(text)
{

inputText = document.getElementById("inputText")
var innerHTML = inputText.innerHTML
var index = innerHTML.indexOf(text);
if ( index >= 0 )
{
innerHTML = innerHTML.substring(0,index) + "<span class='highlight'>" + innerHTML.substring(index,index+text.length) + "</span>" + innerHTML.substring(index + text.length);
inputText.innerHTML = innerHTML
}

}
highlight('{{单词1}}');

</script>
flayying 2020-01-08
  • 打赏
  • 举报
回复
<div id="ff" > {{例句1}}</div>

<script>

function highlight(text)
{


inputText = document.getElementById("ff")


var innerHTML = inputText.innerHTML
var index = innerHTML.indexOf(text);

if ( index >= 0 )
{
innerHTML = innerHTML.substring(0,index) + "<span class='highlight'>" + innerHTML.substring(index,index+text.length) + "</span>" + innerHTML.substring(index + text.length);
inputText.innerHTML = innerHTML
}

}
highlight('{{word2}}')
</script>
天际的海浪 2020-01-08
  • 打赏
  • 举报
回复
什么改个ID号?说清楚,或者发下完整代码。
下载代码方式:https://pan.quark.cn/s/a4b39357ea24 全国计算机等级考试二级教程《Python语言程序设计》(2018年版)被视为针对Python入门者和备考人员的核心学习材料。该资料汇总了教材内的所有编程练习答案,这些答案在Python 3.5.3环境经过实际执行测试,从而保障了代码的准确性和应用价值。备考人员借助这些答案,能够评估自身的学习进度,并深入理解和熟练掌握Python编程的基础原理与方法。 1. Python基础理论:Python作为一门高级编程语言,因其简明扼要的语法结构和卓越的功能表现而备受推崇。基础内容涵盖了变量、数据种类(例如整型、浮点型、字符串、布尔型、列表、元组、字典、集合)、逻辑控制(比如条件判断if-else,循环控制for、while)、函数的声明及使用、模块的引入等。 2. Python高级应用:Python的进阶内容涉及异常管理(try-except-finally结构),类与实例(面向对象编程的基础,包含类的构造、对象的生成、属性与方法的运用、继承机制、多态表现),装饰器(用于调整函数或类的功能特性),上下文管理器(借助with语句实现资源管理)等。 3. 数据文件处理:Python配备了全面的文件操作功能,涉及文件的开启、数据读写、关闭操作,以及多种操作模式(例如r模式用于读取,w模式用于写入,a模式用于追加内容等)。此外,还包括文本文件与二进制文件的转换处理,以及文件的位置调整、复制和删除等操作。 4. 标准库的运用:Python的标准库资源极为丰富,比如os模块提供操作系统接口,sys模块用于获取系统参数,random模块可用于生成随机数值,datetime模块负责处...

87,987

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧