Munzilla
Munzilla

Reputation: 3855

content disappearing when using jquery slideToggle in IE7

I've seen this question asked several times but haven't seen any answers.

I have a ul that I'm expanding and collapsing using slideToggle() with jquery. The code is simple:

$('#leftMenu li a.moreLess').click(function() {
    $(this).next().slideToggle('normal');   
});

With markup of:

<a class="moreLess">Click here to see more</a>
<ul>
  <li>something</li>
  <li>something else</li>
  ...
</ul>

I have a button with a class of .moreLess and when it is clicked the list below it should expand or collapse. For some reason in IE 7 all of the content is disappearing once the list is fully expanding. When it collapses, the content appears again until the list is fully closed.

I'm not sure if this is something CSS related, but I was hoping someone might have run into this before. Thanks in advance for your help!

Upvotes: 6

Views: 6557

Answers (4)

HypeZ
HypeZ

Reputation: 4127

in my case the content loaded with slideToggle was "shifted" down creating 2 empty space (only in IE7)

i solved with this css:

form {
    margin: 0;
}

Upvotes: 0

thorinkor
thorinkor

Reputation: 966

put overflow: hidden; for the div in which you have the content, that gets messed up. Works for me, but still it's and IE bug...

Upvotes: 4

Phenom
Phenom

Reputation: 191

put a zoom:1 property. it works with position:relative.

Upvotes: 19

Munzilla
Munzilla

Reputation: 3855

FYI the problem was with CSS positioning on the elements inside the UL that is being toggled. Once I removed any relative and/or absolute positioning on those elements, the problem no longer happened.

Upvotes: 10

Related Questions