skovenborg -> Jeg har løst problemet nu :o)
Det var ikke helt dit forslag der løste problemet, men det var med til det :-)
var temp_node, parent_node;
tags = document.getElementsByTagName("jshighlightscriptex");
for (ifor = tags.length - 1; ifor >= 0; ifor--) {
parent_node = tags.item(ifor).parentNode;
temp_node = tags.item(ifor).firstChild.cloneNode(true);
parent_node.replaceChild(temp_node, tags.item(ifor));
}
Min bookmarklet (der er baseret på
http://www.squarefree.com/bookmarklets/pagedata.html#highlight):
java script:(function(){var ifor=0, count=0, tags, temp_node, parent_node, report, text, dv, lines, colors=new Array("lime", "yellow", "aqua", "red");text=prompt("Search phrase:", "");if(text==null || text.length==0)return;window.status="Searching for \""+text.replace(/\|/g,"\", \"")+"\"...";lines=text.split("|");dv=document.defaultView;function searchWithinNode(node, te, len, color){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("jshighlightscriptex");spannode.style.backgroundColor=color;spannode.style.color="black";middlebit=node.splitText(pos);endbit=middlebit.splitText(len);middleclone=middlebit.cloneNode(true);spannode.appendChild(middleclone);middlebit.parentNode.replaceChild(spannode,middlebit);++count;skip=1;}}else if( node.nodeType==1&& node.childNodes && node.tagName.toUpperCase()!="SCRIPT" && node.tagName.toUpperCase!="STYLE" && node.tagName.toUpperCase()!="TEXTAREA"){for (var child=0; child < node.childNodes.length; ++child){child=child+searchWithinNode(node.childNodes[child], te, len, color);}}return skip;} tags=document.getElementsByTagName("jshighlightscriptex");for (ifor=tags.length-1;ifor>=0;ifor--){parent_node=tags.item(ifor).parentNode;temp_node=tags.item(ifor).firstChild.cloneNode(true);parent_node.replaceChild(temp_node,tags.item(ifor));} report="Report:";for (ifor=0; ifor<lines.length; ifor++) {if(lines[ifor]==null || lines[ifor].length==0)continue; count=0; searchWithinNode(document.body, lines[ifor].toUpperCase(), lines[ifor].length, colors[ifor%colors.length]); report=report+" \""+lines[ifor]+"\" "+count+";"}window.status=report;})();
Det skal bruges i
http://www.eksperten.dk/artikler/16 :o)