京东自营 + 国补 iPhone 历史最低价          国家补贴 享8折

Jquery插件之高亮显示特定内容 修正版

Jquery插件之高亮显示特定内容 修正版 但是目前已经不适用于新版本的jQuery了,我改了下。
$(function() {
jQuery.highlight = document.body.createTextRange ?
/*
Version for IE using TextRanges.
*/
function(node, te) {
var r = document.body.createTextRange();
r.moveToElementText(node);
for (var i = 0; r.findText(te); i++) {
r.pasteHTML('<span class="highlight">' + r.text + '<\/span>');
r.collapse(false);
}
}
:
/*
(Complicated) version for Mozilla and Opera using span tags.
*/
function(node, te) {
var pos, skip, spannode, middlebit, endbit, middleclone;
skip = 0;
if (node.nodeType == 3) {
pos = node.data.toUpperCase().indexOf(te);
if (pos >= 0) {
spannode = document.createElement('span');
spannode.className = 'highlight';
middlebit = node.splitText(pos);
endbit = middlebit.splitText(te.length);
middleclone = middlebit.cloneNode(true);
spannode.appendChild(middleclone);
middlebit.parentNode.replaceChild(spannode, middlebit);
skip = 1;
}
}
else if (node.nodeType == 1 && node.childNodes && !/(script|style)/i.test(node.tagName)) {
for (var i = 0; i < node.childNodes.length; ++i) {
//i += $.highlight(node.childNodes[i], te);//原版
i += $(node.childNodes[i]).highlight(te);//张伟修改
}
}
return skip;
}
;
});
jQuery.fn.removeHighlight = function() {
return this.find("span.highlight").each(function() {
this.parentNode.replaceChild(this.firstChild, this).normalize();
});
};

下载方法:
1、请用微信扫描下方二维码关注时代Java公众号,或者微信搜索时代JavaNowJava关注。
    (如已经关注,请直接发送编号)
2、在时代Java公众号里发送编号:5229
5229
3、发送后,将立刻收到 “验证码已经接收成功” 的回复,即可选择线路下载:
通用网络下载移动网络下载电信网络下载

本文系作者在时代Java发表,未经许可,不得转载。

如有侵权,请联系nowjava@qq.com删除。

编辑于

关注时代Java

关注时代Java