Вопрос по jquery, html, javascript – jQuery slideDown не является гладким

11

У меня есть этот маленький эффект jQuery slideDownhttp://jsfiddle.net/Gg4eP/2/

Но анимация не гладкая? Что я делаю не так?

Спасибо за ваше время.

Рекомендую вам элегантность этого сценария! deewilcox
Что вы имели в виду под не гладким? Я думаю, что это работает отлично. The Alpha

Ваш Ответ

2   ответа
1

который автоматически переносится при анимации, и он немного дергается, когда пытается определить высоту элемента.

Попробуйте отформатировать текст, чтобы он соответствовал элементу, и посмотрите, поможет ли это.

Я действительно сделал это для вас, проверьте, если этоFIDDLE решает это?

Возможно, будет работать над тем, чтобы заданные элементы также имели фиксированную высоту?

FIDDLE

22

http://jsfiddle.net/BpMam/

Объяснить:

jQuery не будет знать размеры вашего скрытого div, пока он не отобразится. Поэтому, когда он щелкает по нему, он фактически вытягивает его из положения, чтобы измерить, прежде чем быстро заменить. Это часто имеет побочный эффект, вызывающий некоторую нервозность. Установка ширины элемента предотвращает вытягивание jQuery из позиции.

Если элемент имеет ширину 100% и его вытягивают из потока для измерения, он может больше не иметь правильную ширину (да, из-за обертывания). Это также приведет к неверному вычислению высоты («эй, этот div имеет высоту всего 20 пикселей, если он имеет ширину всей страницы»). Задавая явную ширину, давайте jQuery выполним правильный расчет и не позволяем div вытаскиваться из позиции из-за неправильной ширины.
Да работает отлично :) спасибо за объяснение :) user13746
Хорошо, но я все еще не понимаю. Почему по умолчанию (или явно)width:100% неисправна? Это все еще вычисляет к фактическому значению. Это связано с переносом текста?
Правильная ширина. Не произвольная ширина.
Должен согласиться, что установка.tab_content вwidth:400px работает, но объяснение в лучшем случае неполное, а может и ошибочное. Попробуйте установить.tab_content вwidth:200px и скачок возвращается. Предоставленное объяснение не может предсказать это, так почему?

Похожие вопросы