Проблема с Jquery slideToggle IE

у меня есть jquery slideToggle, работающий для Firefox. Хорошо, это не идеально, потому что, когда он скользит вниз, производительность как-то дергается. Я пробовал разные обходные пути, но никто не помог.

Итак, первый вопрос: что могло вызвать эту небольшую нервозность в моем коде.

И тут большая проблема - это отображение в IE. IE6 и IE7. Скрытые div не скрыты в IE в исходной позе. И скольжение тоже ведет себя странно.

Я надеюсь, что кто-то может спасти меня от этого дерьма ......

Просто зайдите на мой сайт с Firefox:

http://www.haus-plan.de/_01_Hausplan/

и проверьте его, а затем сравните с IE6 и 7.

Исходный код доступен через firefox или firebug.

Я надеюсь, что кто-нибудь может помочь.

здесь мой код jquery:

$(document).ready(function(){

//  Get height of all des before hide() occurs.  Store height in heightArray, indexed based on the de's position.
heightArray = new Array();
$("div.d_show_hide #de").each(function(i) {
  theHeight = $(this).height();
  heightArray[i] = theHeight;
});

// Hide all des
$("div.d_show_hide #de").hide();

//  When a tt is clicked, 
$("div.d_show_hide .tt").click(function () {
  //  Based on the tt's position in the div, retrieve a height from heightArray, and re-assign that height to the sibling de.
  $(this).next("#de").css({height: heightArray[$("div.d_show_hide .tt").index(this)]});
  //  Toggle the divideVisibility of the de directly after the clicked de
  $(this).next("#de").slideToggle("slow");
});

});


person UtothaX    schedule 28.10.2009    source источник
comment
Проверяется ли ваш javascript на jslint.com? Если у вас есть проблемы с IE, это первое, что я бы проверил. IE привередлив, как и все, когда дело доходит до действительного JS (или, наоборот, Firefox более снисходителен).   -  person brettkelly    schedule 28.10.2009
comment
У вас медленный компьютер? Возможно, это связано с тем, что у вас нервозность. Избавьтесь от высоты для тестирования... это работает? Просто скройте их и переключите слайд при нажатии. Это работает?   -  person CodeJoust    schedule 28.10.2009
comment
Привет, а ты? Вы видите прыгающую анимацию при нажатии на красные заголовки в поле контента? А когда заходишь на сайт в IE, разницу видишь? скрытые div отображаются при запуске в IE. Но так не должно быть. Пожалуйста помоги.   -  person UtothaX    schedule 28.10.2009
comment
мой компьютер не должен быть таким медленным. Core i7 с 6 ГБ ОЗУ :)   -  person UtothaX    schedule 28.10.2009


Ответы (1)


просто нужно форсировать ширину элемента!

<li><a href="#" id="sombra" onclick="$('#opt_1').slideToggle(360);">MUEBLES</a>
              <!-- just have to force the width of the elemet! -->
              <ul id="opt_1" style="display:none; width:164px;">

              <li id="imagen_superior"></li>
              <li><a href="salones-en-madrid-capital.php">SALONES</a></li>
              <li><a href="dormitorios-de-matrimonio-en-madrid-capital.php">DORMITORIOS</a></li>
              <li><a href="dormitorios-juveniles-en-madrid-capital.php">JUVENILES</a></li>
              <li><a href="muebles-de-cocina-en-madrid-capital.php">COCINAS</a></li>
              <li><a href="cuartos-de-bano-en-madrid-capital.php">BAÑOS</a></li>
              <li><a href="muebles-auxiliares-en-madrid-capital.php">AUXILIARES</a></li>
              <li><a href="sofas-en-madrid-capital.php">SOFÁS</a></li>
              <li><a href="mesas-en-madrid-capital.php">MESAS</a></li>
              <li><a href="sillas-en-madrid-capital.php">SILLAS</a></li>
              <li><a href="colchoneria-en-madrid-capital.php">COLCHONES</a></li>
              <li id="imagen_inferior"></li>
            </ul>

person Leonardo Palomo    schedule 14.06.2011