Jquery插件之高亮显示特定内容 修正版 |
2021-01-21 22:48:18 35资源网(www.35d.net) |
jQuery |
下载本资源原文网址:http://www.daima.org/jQuery/jq16423.html 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(); }); }; |
|
|
|
资源大全_资源下载网站:www.35d.net 本站资源仅限研究学习使用,如需商用请联系版权方, 本站事务联系QQ:939804642
|
|