如何解决在Javascript中以给定的长字符串突出显示特定的字符串
| 我有一个长字符串,以及其他字符串列表,需要在长字符串中进行标记。 假设我们有abcdefghijk
,我需要标记的字符串是ghi
和abc
。
在Javascript和CSS中最简单的方法是什么?我考虑过使用exec()
方法,该方法将返回长字符串中字符串的起始索引。
然后,我将获得起始索引和字符串的大小。因此,我可以在长字符串中找到它。我该如何突出显示?也许使用CSS?
解决方法
您可以尝试使用此jQuery插件。真的很简单...
如何使用它?
1-下载插件
jquery.highlight-3.js(2 KB),并在jQuery之后在您的页面中引用它。
2-设置突出显示类的样式
在CSS工作表中创建一个条目:
.highlight { background-color: yellow }
3-突出显示的术语/短语
用文本调用突出显示功能以突出显示。要突出显示表单元素中所有出现的“ ghi”(不区分大小写),请使用以下代码:
$(\'form\').highlight(\'ghi\');
4-删除突出显示
高亮可以使用removeHighlight函数从任何元素中删除。在此示例中,具有ID Highlight-plugin的元素下的所有突出显示均被删除。
$(\'#highlight-plugin\').removeHighlight();
, 好吧,如果您知道字符串开头的索引和长度,则只需在其周围放置跨度标签即可。因此,您的HTML如下所示:
<span class=\"highlight\">abc</span>def<span class=\"highlight\">ghi</span>jk
然后在CSS中设置跨度样式:
.highlight
{
background-color:yellow;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。