0
我正在为我的网站制作文本编辑器,并且我需要一个查找和替换功能,可以在每次出现文本时突出显示它,并且如果用户选择,取代它。然后它转移到下一个地方,并做同样的事情。 我看到这个代码:使用javascript查找和替换迭代
var haystackText = "";
function findMyText(needle, replacement) {
if (haystackText.length == 0) {
haystackText = document.getElementById("haystack").innerHTML;
}
var match = new RegExp(needle, "ig");
var replaced = "";
if (replacement.length > 0) {
replaced = haystackText.replace(match, replacement);
}
else {
var boldText = "<div style=\"background-color: yellow; display: inline; font-weight: bold;\">" + needle + "</div>";
replaced = haystackText.replace(match, boldText);
}
document.getElementById("haystack").innerHTML = replaced;
}
但它只能与具有文本是一个div的作品,而不是一个textarea,像我有,而且,它发现和/或替换所有出现的同时,而不是一个接一个地遍历它们。
我该如何做这项工作?
我正在使用texarea,我想使用它的'selectionStart'和'selectionEnd'属性。 – TricksfortheWeb