www.webdeveloper.com
Results 1 to 6 of 6

Thread: hide link and div onClick

  1. #1
    Join Date
    Mar 2010
    Posts
    12

    hide link and div onClick

    Hi all,

    I am having trouble trying to hide a link and a div when I click on a link. Here is what I tried to do first.

    I have two links and one div box. When I click the first link I want to show the div box and another link (hide) then at the same time I want to hide the link that I clicked.

    Showdiv HideDiv(initially hidden)

    --------------div box------
    | initially hidden |
    | |
    --------------------------
    Code:
    <script language="JavaScript">
    	function toggle(id) {
    		var state = document.getElementById(id).style.display;
    			if (state == 'block') {
    				document.getElementById(id).style.display = 'none';
                                    document.getElementById(firstlink).style.display = 'none';
    			} else {
    				document.getElementById(id).style.display = 'block';
                                    document.getElementById(firstlink1).style.display = 'Block';
    			}
    		}
    </script>
    
    
    < a href="#" id="firstlink"style="display:block;" onclick="Javascript:toggle('id')">hide div</a>
    
    < a href="#" id="firstlink1" style="display:none;" onclick="Javascript:toggle('id')">show div</a>
    
    <div id="div" style= "display:none;>My content here! </div>
    Your help will be greatly appreciated.

    If it is not possible to do with link (<a> tags) can I achieve this with an image? Lets say I just change the image onclick and show a div box and then click the same (now changed image) and hide the box.

    Thoughts?
    Last edited by Kor; 03-24-2010 at 07:35 AM. Reason: wrap the code [code][/code]

  2. #2
    Join Date
    Dec 2003
    Location
    Bucharest, ROMANIA
    Posts
    15,428
    You may use a single link. No need for link's id.
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta http-equiv="Content-Style-Type" content="text/css">
    <meta http-equiv="Content-Script-Type" content="text/javascript">
    <script type="text/javascript">
    function toggle(a,id){
    var div=document.getElementById(id);
    if(div.style.display=='none'){
    div.style.display='block';
    a.innerHTML='hide div';
    }
    else{
    div.style.display='none';
    a.innerHTML='show div';
    }
    }
    </script>
    </head>
    <body>
    <a href="#" onclick="toggle(this,'div');return false">show div</a>
    <br><br>
    <div style="display:none" id="div">My content here</div>
    </body>
    </html>

  3. #3
    Join Date
    Mar 2010
    Posts
    12
    Thank you very much.

    Also how can I achieve this with an image instead of link?

  4. #4
    Join Date
    Dec 2003
    Location
    Bucharest, ROMANIA
    Posts
    15,428
    Quote Originally Posted by software_janito View Post
    Thank you very much.

    Also how can I achieve this with an image instead of link?
    In many ways. The simple one: embed the image inside the link and change the image's src. Make sure the image has (HTML or CSS) border=0/none.
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta http-equiv="Content-Style-Type" content="text/css">
    <meta http-equiv="Content-Script-Type" content="text/javascript">
    <script type="text/javascript">
    function toggle(a,id){
    var div=document.getElementById(id);
    var img=a.getElementsByTagName('img')[0];
    if(div.style.display=='none'){
    div.style.display='block';
    img.src='hide.gif';
    }
    else{
    div.style.display='none';
    img.src='show.gif';
    }
    }
    </script>
    </head>
    <body>
    <a href="#" onclick="toggle(this,'div');return false"><img src="show.gif" alt="" border="0"></a>
    <br><br>
    <div style="display:none" id="div">My content here</div>
    </body>
    </html>
    Last edited by Kor; 03-24-2010 at 08:05 AM.

  5. #5
    Join Date
    Mar 2010
    Posts
    12
    Oh yeah, thanks! You are a great help.

    This is off topic but since you are a moderator I will ask anyway.

    I am missing "r" at the end of my name. It is supposed to be software_janitor can this possibly be changed?

  6. #6
    Join Date
    Dec 2003
    Location
    Bucharest, ROMANIA
    Posts
    15,428
    Quote Originally Posted by software_janito View Post

    This is off topic but since you are a moderator I will ask anyway.

    I am missing "r" at the end of my name. It is supposed to be software_janitor can this possibly be changed?
    It is not in my power. You could ask the Admin for that. See JPnyc at http://www.webdeveloper.com/forum/member.php?u=19282

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles