2010-08-02 4 views
2

У меня есть простой .slideToggle на моей категории рубрик на сайте: http://www.UtahCodeCamp.com/Sessions/:JQuery .slideToggle не изменяет размер вмещать DIV

// Slide Toggle the headers 
$(".collapse-track").each(function() { 
$(this).click(function() { 
    $(this).next().slideToggle(); 
}); 
$(this).css("cursor", "pointer"); 
$(this).next().hide(); 
}); 

Все работает отлично в FireFox и Chrome/Safari, но в IE8 родительского DIV (с желтой рамкой внизу) не будет изменять размер. Затем, если вы разворачиваете все категории и сворачиваете их снова, названия категорий располагаются прямо друг над другом.

Любые идеи о том, как исправить это для IE8? Меня не интересует совместимость с IE6 или ниже, но я бы хотел поддержать IE7/8.

+0

Дополнительная информация: друг упомянул, что если вы используете таблицу в IE8, у jQuery часто возникают проблемы. Содержимое, которое я пытаюсь развернуть и свернуть, имеет таблицу для каждого элемента. –

ответ

2

Проблема, с которой вы столкнулись, напрямую не связана с jQuery slideToggle mehod. Вместо этого это связано с одним из ваших правил CSS. Я использовал панель инструментов разработчика, чтобы изменить следующее:

.FloatLeft { 
    width: 850px; 
    /*display: inline-block;*/ /* This line was causing the problem */ 
} 

Я не тестировал, если это повлияет на Firefox или на Chrome.

+0

Спасибо тонну! Ты восхитителен!! Иногда этот материал становится настолько сложным, что сложно понять реальную проблему. Из любопытства вы знаете, какой браузер ведет себя некорректно? Кажется, мне это должно сломать все браузеры? –

+0

Проблема, когда вы расширяете все категории и сворачиваете их снова, все еще происходит, но теперь это не так плохо. –

+0

Прошу прощения, я должен был упомянуть, что я пробовал это только на IE 8. Я не тестировал его в каких-либо других браузерах, чтобы узнать, не изменит ли это изменение на них страницу. Я бы порекомендовал вам проверить его на других браузерах, которые вы хотите, чтобы ваш сайт поддерживал. Что касается нарушения во всех браузерах, это не всегда так, потому что каждый может реализовать спецификацию CSS по-разному, что приводит к несоответствиям в рендеринге страницы в разных браузерах. –

Смежные вопросы