rendered paste body //smiley codeif(smilies ==1){ smileys = { ">:\\)" : smlEvil, ":\\)" : smlHappy, ":-\\)" : smlHappy, ":\\(" : smlFrown, ":-\\(" : smlFrown, ":D" : smlGrin, ":-D" : smlGrin, ":\\|" : smlNtl, ":-\\|" : smlNtl, ":P" : smlRazz, ":-P" : smlRazz, ";\\)" : smlWink, ";-\\)" : smlWink, "rolls eyes": smlRoll, ":o" : smlShock, ":-o" : smlShock, "gold star" : imgStar }; regex = {}; for (key in smileys) { regex[key] = new RegExp(key, 'g'); //alert('regex: ' +regex[key]); } textnodes = document.evaluate( "//td[@class = 'bodytext']//text()", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); k=0; for (var i = 0; i < textnodes.snapshotLength; i++) { node = textnodes.snapshotItem(i); if(!is_all_ws(node)){ var s = document.createElement("span"); node.data = node.data.replace(/</g,"<"); node.data = node.data.replace(/>/g,">"); s.innerHTML = node.data.replace(/\s+$/g, ' '); for (key in smileys) { s.innerHTML = s.innerHTML.replace(regex[key], smileys[key]); } node.parentNode.replaceChild(s, node); } }