Этот код, кажется, сделал это, но он небрежный и немного излишний.Я уверен, что должен быть более короткий способ сделать это, чем почти дублировать мою строку execCommand дважды в одной и той же функции.
var TRange=null;
function findString (str) {
var strFound;
var counter = 0;
if (TRange==null || strFound==0) {
TRange=self.document.body.createTextRange()
strFound=TRange.findText(str)
if (strFound) {
TRange.execCommand('foreColor', false, "#ff0000");
}
}
TRange.collapse(false);
while (strFound=TRange.findText(str)) {
if (counter > 50){
alert("Search exceeded maximum limit of 50.");
return;
}
TRange.execCommand('foreColor', false, "#ff0000");
TRange.collapse(false);
counter += 1;
}
return;
}