Connect with us

News

How to: Show/Hide any div box with jQuery in WordPress

Published

on

If you take a look at my current sidebar (right) and see the heading Google Search you’ll notice that when you click it the Google Search box show’s into view.

Let me show you how this is done.

First make sure that your WordPress site is calling jQuery, buy pluggin this code into our header.php file above the <?php wp_head(); ?> text:

<?php wp_enqueue_script('jquery'); ?>

Then anywhere above the </head >, plug this code in:

<script type="text/javascript">
jQuery(document).ready(function() {
 // hides the slickbox as soon as the DOM is ready
  jQuery('#toggle-search').hide();

 // toggles the slickbox on clicking the noted link
  jQuery('a#slick-slidetoggle').click(function() {
	jQuery('#toggle-search').slideToggle(400);
	return false;
  });
});
</script>

That’s simple, huh. Okay now lets write the Search code:

<h2><a href="#" id="slick-slidetoggle">Google Search</a></h2>
	<div id="toggle-search" style="padding:10px;">
    <form method="get" id="search" action="<?php bloginfo('home'); ?>/">
        <div>
            <input type="text" value="Enter Keyword" onclick="this.value='';" name="s" id="s" />
            <input type="text" name="search-button" id="search-button" value="<?php _e('Search') ?>" />
        </div>
    </form>
</div>

That’s it.

Continue Reading
39 Comments

39 Comments

  1. Pingback: WordPress Links week 6 - 2009 | WPStart.org - WordPress themes, plugins and news

  2. ket

    February 8, 2009 at 2:25 am

    Man I like this trick and will add it to my theme. Thanks for sharing.

    ket´s last blog post..

    • Willie P

      June 17, 2011 at 5:39 pm

      I agree, this is a great little trick and will be implementing it on one of my blogs pretty quick here.
      Thanks!

  3. John MacMenamin

    February 17, 2009 at 9:14 am

    Great Tip I’m using it (Adapted) in a theme.
    Thanks again

    John MacMenamin´s last blog post..Client Coupon Solution for WordPress in Two Colors!

  4. Jimmy

    February 17, 2009 at 10:11 pm

    Is it possible to hide multi Div boxs with jQuery? and If so how?

    • frosty

      February 18, 2009 at 1:00 pm

      There sure is Jimmy,
      All you need to do is reuse the code, and change the #id to the new div box #id.

      since we already have:
      jQuery(document).ready(function() {
      // hides the slickbox as soon as the DOM is ready
      jQuery(‘#toggle-search’).hide();

      // toggles the slickbox on clicking the noted link
      jQuery(‘a#slick-slidetoggle’).click(function() {
      jQuery(‘#toggle-search’).slideToggle(400);
      return false;
      });
      });

      We just need to add in:

      jQuery(‘#toggle-search’).hide();
      jQuery(‘#toggle-tags’).hide(); //option to hide the ID before the page loads

      And:

      jQuery(‘a#slick-slidetoggle’).click(function() {
      jQuery(‘#toggle-search’).slideToggle(400);
      return false;
      jQuery(‘a#slick-slidetoggle-tag’).click(function() {
      jQuery(‘#toggle-tags’).slideToggle(400);
      return false;

      That’s it for the function. Just make sure you create a div box with the id of #toggle-tags

      • Edhuan

        August 1, 2009 at 11:30 pm

        You missed out the ” }); ” . Thought I might point it out to save others from some frustration. Thanks for pointing out how to add multiple boxes.
        🙂

        jQuery(document).ready(function() {
         // hides the slickbox as soon as the DOM is ready
         jQuery('#toggle-topic1').hide();
         jQuery('#toggle-topic2').hide();
        
         // toggles the slickbox on clicking the noted link
         jQuery('a#slick-slidetoggle1').click(function() {
         jQuery('#toggle-topic1').slideToggle(400);
         return false;
         });
         jQuery('a#slick-slidetoggle2').click(function() {
         jQuery('#toggle-topic2').slideToggle(400);
         return false;
         });
        });
        
  5. hamid

    March 14, 2009 at 4:17 am

    Thanks a lot for that,
    but there something confusing me, i set it up like u said exactly and it works very fine, but it’s not working inside the categories in wordpress when im using the permalinks?
    do you know why is that?

    • Austin Passy

      March 14, 2009 at 3:34 pm

      I’m not sure I understand what your talking about. Do you have an example?

  6. Mark

    March 15, 2009 at 2:29 am

    Nice script – I’ll add it to my blog as well. Many thanks.

  7. J.lE

    March 23, 2009 at 7:09 am

    nice plugin, will try it.

    J.lE´s last blog post..KnownHost

  8. RaiulBaztepo

    March 28, 2009 at 6:00 pm

    Hello!
    Very Interesting post! Thank you for such interesting resource!
    PS: Sorry for my bad english, I’v just started to learn this language 😉
    See you!
    Your, Raiul Baztepo

  9. Bill

    April 23, 2009 at 4:13 am

    Thanks for the info! It still amazes me everything you can do with JQuery.

  10. Craig

    September 1, 2009 at 7:45 pm

    This is exactly what I was looking for, thanks!

    One question though. Is it possible to hide the box permanently by maybe setting a cookie, or checking if user is logged in?

    • Austin

      September 2, 2009 at 5:45 pm

      There is, you’d have to look into the jQuery cookie tutorial for how to do this.

  11. aron

    September 7, 2009 at 1:47 am

    Hi Austin

    Can we use inside a loop?

    • Austin

      September 7, 2009 at 6:12 pm

      yes.

  12. dave

    September 13, 2009 at 2:57 am

    many thanks for this.

    is there a way to set the div to “show” on load, and “hide” on click?

    thx in advance.
    .-= dave´s last blog ..Closing the deal with Live Help =-.

  13. jonesy

    September 24, 2009 at 6:41 am

    hey austin,
    this was so nice – one question, i’m not getting this to work with multiple divs on the same click – i want to hide both divs at once, not with two buttons. do you know why this may not work:

    // toggles the slickbox on clicking the noted link
    jQuery(‘a#slick-slidetoggle’).click(function() {
    jQuery(‘#div_a’).slideToggle(400);
    jQuery(‘#div_b’).sideToggle(400);
    return false;
    });
    });

    • GT

      August 15, 2010 at 9:38 pm

      Hey there Jonesy,

      This is something I’m trying to implement as well; I want to have the more insane parts of my ranting hidden by default, and one button at the top of the post that says “Bring the Crazy”.

      The key is the diff between ID and CLASS… you can have multiple things with class “craziness”, but you can only have one thing with ID craziness.

      It’s still easy to do though – and no doubt in the last eight months (wrote GT, spotting the date) you’ve already found out how.

      I’ll shut up now.

      Cheerio

      GT

  14. Mike

    October 27, 2009 at 10:43 am

    Hi,

    Thanks for the great tutorial, and adaptaion for multiple show/hide DIVs, it works great!!

    There seems to bit a little problem with the jQuery and Firefox (3.5), whereby if the expandable DIV is at the very bottom of the page, the page flickers (quite harshly) when you hide the DIV (when it is expanded), as the page resizes to become smaller. Can’t see evidence of this problem in Opera or Safari 4.

    I guess it’s a problem with Firefox’s capabilities, but is there a way around this problem?

  15. Blake

    May 17, 2010 at 10:32 am

    Very cool tutorial. Will give it a shot on my site.

  16. Pingback: Photo Catalog

  17. Andy

    June 24, 2010 at 9:20 am

    Hi

    Ive got the code working, but if I use it on two or three elements they all work, i.e. open and close, when one of the links is clicked.

    Im wanting to create this into a shortcode in WP and would like to know how to get them to work independently without listing each separately.

    How do i get them to loop and work individually?

    Thanks in advance

  18. Gimei

    July 14, 2010 at 6:25 am

    Thx for this. I will try out now. I have to show/hide a calendar at side of a site. Hope this will help me 🙂

  19. Carports

    August 11, 2010 at 11:13 pm

    I’m glad to this is usable in the loop.

  20. Bill

    August 19, 2010 at 4:13 pm

    Hi,

    Great tip! Much smaller than other solutions!

    But what if I want to query some posts in WordPress and don’t want to have to add a bunch of functions for every post, I just want to be able to hide and show every post. You know what I mean?
    Would be great if you could help me with that!

    Thanks!

  21. Pingback: Razee » Blog Archive » How to Expand/collapse WordPress posts with jQuery

  22. Adrian

    December 18, 2010 at 2:33 pm

    fixed ok thnx

  23. F.

    January 31, 2011 at 5:22 pm

    Awesome. Thanks.

  24. Nick

    February 17, 2011 at 3:40 pm

    Is there a way to make this code work with buttons? I can get it to work just fine with a basic link, but I’d like to create a button that toggles…

    Thanks!

  25. donya

    April 8, 2011 at 10:50 am

    Love this! But, what I’d like to do is show/hide the div containing the comments on each of my WordPress posts, on the index.php page, which contains multiple posts. Is there a way to modify the jQuery so that it hides each set of comments? Right now when I try to implement it, each botton (at the bottom of each post) closes just the first set of comments, rather than for the specific post.

  26. nottingham laptop repair

    June 4, 2011 at 2:28 pm

    Have you ever accomplished that fully without errors?

  27. Giorgos

    June 8, 2011 at 12:28 pm

    Thanks a lot! Exactly what I was looking for!!

  28. buffalo glass block

    July 12, 2011 at 3:06 am

    i need this codes but does this work for all themes?

  29. peng

    August 21, 2011 at 12:38 pm

    Thx a lot! I searched in Google for show/hide js script for WP and this is the only one that works perfectly in FF IE and safari…very good job Austin, thumb up!

  30. gtjtyjtyu

    September 16, 2011 at 7:34 am

    yetyeteyeyerreyr

  31. Adriana

    October 31, 2011 at 12:20 pm

    Hi Austin,

    Thanks for posting this, it works like a charm and it’s (almost) exactly what I need.
    If you don’t mind me asking, how could I make it slide from the bottom to the top?

    Thanks a lot for your time!

  32. Andy Nathan

    November 4, 2011 at 9:47 pm

    Will this work on any theme? or atleast any standard theme?

You must be logged in to post a comment Login

Leave a Reply

News

The new design in progress

Published

on

Okay, so by now you may notice something. You may be thinking “the site looks a lot different”, and you are correct. Over the past few weeks I’ve decided that the site needed a different flare and feel. While many and most site’s these days are popping up with featured posts, and jQuery sliders, I wanted to steer away from that and go old school. While I had some trouble’s activating the theme today which didn’t allow me to fully finish the theme, 99% of it is done.

The site is still build on the powerful Hybrid theme framework. Enjoy.

Continue Reading

News

Bar Camp Los Angles 7

Hello from BarCampLA in beautiful Culver City. It’s a bit early and presentation’s don’t start till after lunch. While I hadn’t planned on making a presentation, I got an email from Shen asking if I’d do a collaboration presentation, and I guess i agreed.

Published

on

So at this time Shen, myself and possibly Michael Dorausch. will be doing a panel presntation at 6:00pm in track 3 of the BarCamp room here in the OTX facility.

Links

Austin Passy
Twitter: @TheFrosty
Personal Blog: TheFrosty.com
Shen Deshayne
Twitter: @shennyg
Site: Shen Deshayne
Michael Dorausch
Twitter: @Chiropractic
Site: Michael Dorausch
Continue Reading

Child

New theme release: CULT[i]VATE

Doing theme modification and even custom template files has brought me to this point. Today I’ve created my first premium theme, and since I am a huge fan of Hybrid, I decided that a child theme would be an appropriate starting point.

Published

on

So after some time playing with many options and idea’s I’ve finally released a premium theme. This theme, which I am calling CULT[i]VATE is a child theme.

Unfamiliar with child themes? You may want to check out this post Ian Stewart wrote.

CULT[i]VATE is a child theme of the Hybrid:

Hybrid is a user-friendly, search-engine optimized theme framework, featuring 14 custom page templates and 9 widget-ready areas, allowing you to create any type of site you want.

CULT[i]VATE includes four new widget-ready area’s and one custom accordion widget for one of the area’s. It also includes two front page templates.

This theme is for sale for $12.00 which you can purchase here. Looking for a demo?

[wp_eStore:product_id:1:end]

Continue Reading

Random Search Terms

Title

Recent Posts: Fully Net Worth . com

Mason Rudolph Net Worth: How Rich is the NFL Player Actually?

Mason Rudolph Net Worth: How Rich is the NFL Player Actually?

Mason Rudolph is an American football quarterback who currently plays for the Pittsburgh Steelers of the National Football League. As of 2019, Mason Rudolph net worth is estimated to be $4 million. Rudolph was born on July 17, 1955, in Rock Hill, South Carolina and was named after his father and grandfather. He went to […]

Lil TJay Net Worth: 5 Interesting Facts About The Rapper

Lil TJay Net Worth: 5 Interesting Facts About The Rapper

Tione Merritt, who is better known by his stage name as Lil Tjay is a young and rising American rapper and songwriter originally from the Bronx in New York. Here are some interesting facts about Lil Tjay: 1. Lil Tjay net worth is estimated to be $600,000 As of 2019, Lil Tjay net worth is […]

Jim Jordan Net Worth: How Rich is the Republican Congressman?

Jim Jordan Net Worth: How Rich is the Republican Congressman?

James Daniel Jordan, also known as Jim Jordan, is an American politician and former wrestler. He is part of the U.S. Representative for Ohio’s 4th congressional district since 2007. Moreover, he is also a ranking member of the House Oversight Committee since 2019. As of 2019, Jim Jordan net worth is estimated to be $400,000. […]

Catherine Tyldesley Net Worth: How Rich is the Actress Actually?

Catherine Tyldesley Net Worth: How Rich is the Actress Actually?

Catherine Tyldesley is an English actress who is best known for her role as Eva Price in the soap opera Coronation Street on ITV. She recently appeared in the popular show called Strictly Come Dancing along with Johannes Radebe in its seventeenth edition. As of 2019, Catherine Tyldesley net worth is estimated to be £800,000. […]

Trending