Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.01.2010, 11:09
Интересующийся
Отправить личное сообщение для Nominus umbra Посмотреть профиль Найти все сообщения от Nominus umbra
 
Регистрация: 29.10.2009
Сообщений: 19

Как сделать плавное изменение размеров контейнеров при смене AJAX-содержимого
Собственно, суть в сабже.
Синглтон, реализующий анимацию произвольного CSS-набора, у меня есть, но тут вопрос принципиальный, а от чего к чему - анимировать размеры?
Есть некоторый контейнер, который содержит контент.
По действию AJAX-запрос меняет содержимое контейнера.
Т.е. innerHTML контейнера заполняется из responseText реквеста.
Всё понятно и всё работает, но не нравится, что "скачут" размеры контейнеров.
Хочется плавного изменения... контейнер может быть как блоком, так и инлайном.
Какие есть идеи?
Ответить с цитированием
  #2 (permalink)  
Старый 27.01.2010, 11:16
Интересующийся
Отправить личное сообщение для Nominus umbra Посмотреть профиль Найти все сообщения от Nominus umbra
 
Регистрация: 29.10.2009
Сообщений: 19

Я пока склоняюсь к промежуточному помещению содержимого в контейнер, вынесенный за пределы видимости смещением.
Тогда я смогу получить параметры W+H таргета, параметры контейнера внедрения (с прежним контентом) мне известны, получается, буду знать, от чего к чему анимировать...
Т.е. так:
1. Получаю responseText, помещаю в контейнер, вынесенный за пределы видимости.
2. Получаю его размеры, зависящие от контента.
3. Получаю размеры контейнера приёмника.
4. Анимирую размеры контейнера до требуемых (а внутрях там крутилка работает.)
5. Переношу контент из временного в уже анимированный.

Может, что ещё можно? Или проще как-то...
Ответить с цитированием
  #3 (permalink)  
Старый 27.01.2010, 13:08
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

До пятого пункта все верно.

Сообщение от Nominus umbra
Переношу контент из временного в уже анимированный
Заменять не текст в контейнере, а сам контейнер.
Ответить с цитированием
  #4 (permalink)  
Старый 27.01.2010, 13:32
Интересующийся
Отправить личное сообщение для Nominus umbra Посмотреть профиль Найти все сообщения от Nominus umbra
 
Регистрация: 29.10.2009
Сообщений: 19

можно и контейнер...
это не принципиально
мне сейчас только не совсем ясно, как с инлайн работать...
да и с блочными там тоже тонкостей много
поскольку контейнер назначения является частью DOM-структуры со своей моделью описания, для корректного промежуточного "невидимого" рендеринга вынесенный контейнер должен быть в том же узле DOM, что и таргет.
Чтобы CSS корректно наложился.
А как его тогда "вынести за пределы", чтобы без помех отрисовать?
Абсолютно позиционировать и left-ом вынести в минус 1000em? Сохранив его ширину? Получается, что плавное растягивание я пока понимаю как отобразить - если растягивание идёт только по одной из осей - если по обоим сразу - ни-па-нят-но... но пока и не нужно... в 90% растягиваться будет по вертикали... в 9.999% - строго по горизонтали, а в обоих случаях... хм...
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax и три <form> не работает. Как правильно сделать листание записей из базы данных? vlad275 AJAX и COMET 2 14.12.2009 14:04
Нужно сделать плавное появление текстового поля как на сайте vkontakte.ru paratrooper1981 Элементы интерфейса 1 23.11.2009 18:24
Вопрос как сделать эту панельку Определённых размеров и свойств. jei jQuery 3 09.06.2009 19:14
Как сделать, чтобы 2 ссылки отображались как hover при наведении мышкой на любую? Ava Элементы интерфейса 5 19.05.2009 23:24
как сделать плавное затухание страницы magistr_bender Элементы интерфейса 1 18.03.2009 14:34