gpt4 book ai didi

javascript - 我怎样才能使这个功能在 Javascript 中更快?

转载 作者:可可西里 更新时间:2023-11-01 13:16:08 26 4
gpt4 key购买 nike

我创建了一个突出显示功能,可以突出显示 <p> 中包含的所有内容红色使用用户指定的关键字。单击提交按钮时,Javascript/jQuery 从输入字段中提取关键字并将其与包含它的任何行进行比较,然后将这些行突出显示为红色。它工作得很好......但它很慢。在处理超过 1000 行 <p> 时,还有另一种方法可以更快地执行此操作吗? ?

HTML

Keyword:&nbsp;<input type="text" id="highlight_box" class="text_box" value="--Text--" /> &nbsp;
<input type="button" id="highlight" value="Highlight" />

<!--Print area for the Access log-->
<div id="access_content" class="tabbed-content">
<ul id="access-keywords-row" class="keywords-row">
<!--When a user submits a keyword it is placed as a tag here so it can be deleted later-->
</ul><br /><br />
<div id="access_log_print" class="print-area">
<p>Some Content</p>
<p>Some more content</p>
<!--Most of the time this could contain 1000's of lines-->
</div>
</div>

JavaScript

//add highlight and tag
$("#highlight").click(
function(){
var id = $("#highlight_box").val();
if(id == "--Text--" || id == ""){
alert("Please enter text before highlighting.");
}else{
$("#access-keywords-row").append("<li><img src=\"images/delete.png\" class=\"delete_filter\" value=\"" + id + "\" /> " + id + "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</li>");
$("#access_log_print p:containsi(" + id + ")").css("color","red"); }
});

//remove highlight and tag
$(".keywords-row").on("click", ".delete_filter",
function() {
var val = $(this).val();

//remove element from HTML
$(this).parent().remove();
$("#access_log_print p:containsi(" + val + ")").css("color","black");

});

最佳答案

加颜色,红色的意思是给每个p加style属性,我觉得加个类可以改善:

p.highlight {
color:red;
}

并替换

$("#access_log_print p:contains(" + id + ")").css("color","red");

通过

$("#access_log_print p:contains(" + id + ")").addClass('highlight');

这可能会稍微加快这个过程

关于javascript - 我怎样才能使这个功能在 Javascript 中更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8926554/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com