您可以window.find()
在非IE浏览器中使用,也可以在IE中使用TextRange
的findText()
方法。这是一个例子:
不幸的是,在版本15中切换到Blink渲染引擎之前的Opera不支持window.find
或TextRange
。如果您对此感到担忧,那么一个更重量级的选择是结合使用我的Rangy库的TextRange和CSS类应用程序模块
码:
function doSearch(text) {
if (window.find && window.getSelection) {
document.designMode = "on";
var sel = window.getSelection();
sel.collapse(document.body, 0);
while (window.find(text)) {
document.execCommand("HiliteColor", false, "yellow");
sel.collapseToEnd();
}
document.designMode = "off";
} else if (document.body.createTextRange) {
var textRange = document.body.createTextRange();
while (textRange.findText(text)) {
textRange.execCommand("BackColor", false, "yellow");
textRange.collapse(false);
}
}
}