[I]Enigma risolto da me, a chi servisse ecco il codice.
codice:function initialise_extraction () { var body=document.getElementsByTagName('body')[0]; var buttons = '<button onclick="Search();">Search</button>'; body.innerHTML=buttons+body.innerHTML; } function Search(){ var body=document.getElementsByTagName('body')[0]; search_item (body); } function showFocus(elem) { document.getElementById('focus').innerHTML = "focus "+elem.tabIndex } function search_item (node) { var cible="Master"; if (node.nodeType == 3) { var parent_node =node.parentNode; var content_node = node.nodeValue; var pos_node = content_node.indexOf(cible); //alert(pos_node); while (pos_node >=0) { var left= content_node.substr(0,pos_node); var right= content_node.substr(pos_node+cible.length); var span= document.createElement('span'); var elt_a= document.createElement('a'); var att = document.createAttribute("tabindex"); att.value = '"1"'; elt_a.setAttributeNode(att); var att2 = document.createAttribute("onfocus"); att2.value = 'showFocus(this)'; elt_a.setAttributeNode(att2); var att3 = document.createAttribute("onblur"); att3.value = 'showBlur(this)'; elt_a.setAttributeNode(att3); var start= document.createTextNode(left); //var end= document.createTextNode(right); var word=document.createTextNode(cible); span.appendChild(elt_a); elt_a.appendChild(word); parent_node.insertBefore(start,node); parent_node.insertBefore(span,node); content_node= right; pos_node = content_node.indexOf(cible); } var end = document.createTextNode(content_node); parent_node.insertBefore(end,node); node.remove(); } else { var children = node.childNodes; var enfants = new Array(); for (var i = 0; i<children.length; i++) { enfants[i] = children[i]; } for (var i = 0; i < enfants.length; i++) { search_item(enfants); } } } function showFocus(elem) { var color = document.createAttribute('style'); color.value = "background-color : #CDDE47"; elem.setAttributeNode(color); } function showBlur(elem) { elem.style.backgroundColor = 'white'; }