I have a page that when a user clicks a title, the following div toggles display.
I want to somehow say if any other divs are display:block then set them to display none first.
I have the following...
$('.office-title').click(function(){
     $(this).next('div').slideToggle();
     return false;
});
and my html markup is as such...
<div class="office-row">
    <h3 class="office-title">Title</h3>
    <div class="office">sadasd</div>
</div>
<div class="office-row">
    <h3 class="office-title">Title</h3>
    <div class="office">sadasd</div>
</div>
<div class="office-row">
    <h3 class="office-title">Title</h3>
    <div class="office">sadasd</div>
</div>
                </office> is not a valid closing. The closing should be </div>
<div class="office-row">
        <h3 class="office-title">Title</h3>
        <div class="office">sadasd</div>
      </div>
    <div class="office-row">
        <h3 class="office-title">Title</h3>
        <div class="office">sadasd</div>
    </div>
    <div class="office-row">
        <h3 class="office-title">Title</h3>
        <div class="office">sadasd</div>
    </div>
CSS:
.office
{
    display: none;
}
and jquery:
$(function () {
    $('.office-title').click(function () {
        $(this).next('div').slideToggle();
        $(this).parent().siblings().children().next().slideUp();
        return false;
    });
});
HERE YOU CAN CHECK
This should do it: http://jsfiddle.net/gKgJ7/
$('.office-title').click(function(){
   $('.office').slideUp();
   $(this).next('div').slideToggle();
   return false;
});
This is not a valid closing:
<div class="office">sadasd</office>
   //---------------------^^^^^^^^----should be </div>
                        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