adrianbj Posted December 6, 2010 Share Posted December 6, 2010 I am creating automated mouseover tooltips for definitions of words in a glossary database. The problem is that I can't figure out how to not replace the word when it appears in hyperlinks, img and various heading tags. I have populated an array with all the words and their definitions - $glossary What I have at the moment is a simple str_replace, because I actually have no idea how to start this preg_replace. foreach($glossary as $glossary_word => $glossary_definition){ $content = str_replace($glossary_word,'<a href="javascript:;" style="cursor:help;color:#BF601A;" onmouseover="Tip(\''.$glossary_definition.'\')" onmouseout="UnTip()">'.$glossary_word.'</a>',$content); } Would be great if I could populate an array of tags that would be ignored when doing the replace ie: $tags_to_ignore = array('a','img','h1','h2','h3',etc) and somehow include this in the preg_replace. What this would mean is that the function would only add the tooltip to occurrences of the word not in these specified tags. Thanks for any thoughts on this. Quote Link to comment Share on other sites More sharing options...
adrianbj Posted December 16, 2010 Author Share Posted December 16, 2010 anyone? Quote Link to comment Share on other sites More sharing options...
adrianbj Posted December 16, 2010 Author Share Posted December 16, 2010 This is pretty close: http://web.archive.org/web/20080312155845/http://tagarga.com/blok/on/080307 works for inside tags. but not within h1 etc tags - should be able to tweak it though. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.