Below is my javascript code which i used to show a div
when clicked on a button
.
How can I hide it when clicked again? And then on clicking it, div
should be visible again?
<script type="text/javascript"> var _hidediv = null; function showdiv(id) { if(_hidediv) _hidediv(); var div = document.getElementById(id); div.style.display = 'block'; _hidediv = function () { div.style.display = 'none'; }; } </script>
To toggle a div visibility in jQuery, use the toggle() method. It checks the div element for visibility i.e. the show() method if div is hidden. And hide() id the div element is visible. This eventually creates a toggle effect.
Projects In JavaScript & JQuery To show and hide div on mouse click using jQuery, use the toggle() method. On mouse click, the div is visible and on again clicking the div, it hides.
To display or hide a <div> by a <button> click, you can add the onclick event listener to the <button> element. The onclick listener for the button will have a function that will change the display attribute of the <div> from the default value (which is block ) to none .
To switch the display-style between block
and none
you can do something like this:
function toggleDiv(id) { var div = document.getElementById(id); div.style.display = div.style.display == "none" ? "block" : "none"; }
working demo: http://jsfiddle.net/BQUyT/2/
In case you are interested in a jQuery soluton:
This is the HTML
<a id="button" href="#">Show/Hide</a> <div id="item">Item</div>
This is the jQuery script
$( "#button" ).click(function() { $( "#item" ).toggle(); });
You can see it working here:
http://jsfiddle.net/BQUyT/
If you don't know how to use jQuery, you have to use this line to load the library:
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
And then use this line to start:
<script> $(function() { // code to fire once the library finishes downloading. }); </script>
So for this case the final code would be this:
<script> $(function() { $( "#button" ).click(function() { $( "#item" ).toggle(); }); }); </script>
Let me know if you need anything else
You can read more about jQuery here: http://jquery.com/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With