giovedì, marzo 05, 2009

JavaScript: Find and Replace Characters on the Page

Codingforums.com has an excellent find and replace script for changing characters on the page once it has already rendered. I’m replicating it here because it’s handy. J

 

<script type="text/javascript">

var txt = document.getElementsByTagName('span')[0].childNodes[0];

var textNodes = new Array();

 

walk(document.getElementsByTagName('body')[0]);

replaceCharacter();

 

function walk(node)

{

if(node.childNodes.length > 0)

{

for(var i = 0; i < node.childNodes.length; i++)

{

walk(node.childNodes[i]);

}

}

 

if(node.nodeName == '#text')

{

textNodes.push(node);

}

}

 

function replaceCharacter()

{

for(var i = 0; i < textNodes.length; i++)

{

textNodes[i].nodeValue = textNodes[i].nodeValue.replace('*', 'Test');

}

}

</script>