![]() |
| ||
| document.getElementById problem Hello, I have this in my CSS: #contentbox a{
And want to change the color with Javascript's function: document.getElementById, but when I use document.getElementById('contentbox a').style.color= "#d05048", I get an error that it doesn't know 'contentbox a'. I tried multiple things and searched on google, but I cannot get it to work. Who can help me? It's a simple question... |
| ||
| Re: document.getElementById problem Hi there, you have made mistake here document.getElementById('contentbox a').style.color= "#d05048"
that should look like document.getElementById('contentbox').style.color= "#d05048"
Example: CSS: <style type="text/css">javascript: <script type="text/javascript"> HTML: <div id="contentbox"> hope this will help you Rahul Dev |
| ||
| Re: document.getElementById problem Hi, thanks for your help, but the 'a' is there on purpose. I want to change the colour of links only in the div 'contentbox' (with javascript). |
| ||
| Re: document.getElementById problem hi you can not do directly like this, the way you have tried is wrong. getElementById() takes only id. use elem.getElementsByTagName('tag name'); this will return array of element('tag name') inside elem. using loop you can........... i think this much is enough. |
| ||
| Re: document.getElementById problem <style content="text/css"> #contentbox a{ font-weight: bold; color: #c8a468; cursor: pointer; } </style> <script content="text/javascript"> function text_over(){ document.getElementById('contentbox a').style.color= "#d05048"; } function text_out(){ document.getElementById('contentbox a').style.color= "#c8a468"; } </script> </HEAD> <BODY> <div id="contentbox"> <a href="......" id="contentbox a" onMouseover="text_over()" onMouseout="text_out()">infinite</a> </div> </BODY> i think this may help you. |
| ||
| Re: document.getElementById problem aravelli, that works, thank you, but only for the first one containing the id. On some pages I have more links and now only the first one changes. this is what I have: try{document.getElementById('contentbox a').style.color= "#d05048";}catch(err){};
there is a try...cath function because some pages don't have the 'contentbox a' id. |
| ||
| Re: document.getElementById problem <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> <style type="text/css"> a:link { color: #c8a468; text-decoration: none; } a:visited { color: #d05048; text-decoration: none; } a:hover { color: #666666; text-decoration: none; } a:active { color: #84414A; text-decoration: none; }</style> </HEAD> <BODY> <div id="contentbox"> <a href="......">text goes here</a><br> <a href="......">text goes here</a><br> <a href="......">text goes here</a> </div> </BODY> </HTML> why can't you go like this instead of using javascript i think this will help for ur need |
| ||
| Re: document.getElementById problem I have links in the contentbox and I have links in my menu. When I use CSS to change "a" the menu gets the wrong colours and cannot be fixed with div's because the "a" tag comes as last and so overwrites the rest. I want to only change the link colours in the contentbox but javascript doesn't understand the id "contentbox a" because it's the id "a" in the id "contentbox" . When I gave the links an id (all the same id) it worked, but javascript only changed the first id, while there are more on some pages. Maybe it can be done with a while loop, but I have no idea how. |
| ||
| Re: document.getElementById problem <style type="text/css"> #contentbox a:link { color: #c8a468; text-decoration: none; } #contentbox a:visited { color: #d05048; text-decoration: none; } #contentbox a:hover { color: #666666; text-decoration: none; } #contentbox a:active { color: #84414A; text-decoration: none; }</style> change the css like this |
| ||
| Re: document.getElementById problem An id can be used only once. It can NOT appear in multiple tags. You need to give each tag a unique id, and then cycle through the ids with a loop in js. e.g. <a .... id="aa1"> |
| All times are GMT -4. The time now is 1:40 am. |
Forum system based on vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC