![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 78
|
Итак я делаю резиновые странички, но непростые. Это значит что странички тянутся по размеру содержимого (картинок от 100*100 до 3400*3400) и появляется скролл у броузера. Скрол появляется так - флеш грузит картинку, определяет размеры говорит их js а js меняет размер контейнера в котором болтается флеш. Все хорошо до того момента пока не открываеш ie 6. Происходят 2 вещи - по непонятным мотивам он не отрисовывает флеш на всю высоту содержащего его контейнера, второе - под флешем лежит обычная страничка имеющая свою высоту. Так вот ie иногда не вытягивает контейнер для флеш на всю высоту... Ключевое слово иногда. Это происходит не с конкретными картинками а при неком сакральном соотношении высоты и ширины.
// расчет высоты javascript - все работает выложила чтоб не говорили что ошибка в js function getClientWidth(){ return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientWidth:document.body.clientWidth; } function getClientHeight(){ return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientHeight:document.body.innerHeight; } function setLiteboxSizes(w,h){/* эту функцию вызывает флеш передает минимальные свои размеры*/ flashOpen = true; w_flash = Math.round(w); h_flash = Math.round(h); w_client = Math.round(getClientWidth()); h_client = Math.round(getClientHeight()); temp_w = w_flash - w_client; if(temp_w>-1 && temp_w<5){w_flash = w_flash-5-temp_w} //////////////////////// ширина /////////////////////// if(w_client >= pageMinWidth){ var width = w_client; } else { var width = pageMinWidth;} if(w_flash <= width){ flashcontent.style.width = (width - 6)+'px'; Stage_w = width;} else { flashcontent.style.width = (w_flash)+'px'; Stage_w = w_flash;} //////////////////////// высота /////////////////////// if(h_client >= pageMinHeight) { var height = h_client; } else { var height = pageMinHeight; } if(h_flash <= height) { flashcontent.style.height = height+'px'; Stage_h = height;} else { flashcontent.style.height = h_flash+'px'; Stage_h = h_flash} } |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 24
|
Спасатель!
Могу сказать, что AS3 мало кто ещё знает на форуме, судя по постам и вопросам… Кто знает, тот молчит потому-то он жаден или его просто тут нет так как он это знает… То, что ты пошёл в такую замечательную направленность в таких сайтах, то это Гуд! Я тоже вот буду пробовать скоро. Это реальный скачёк AS3 и Флэша Гордона. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 78
|
Вот проблема в голом виде.
http://prohost.***********/11837367 |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 78
|
Решение - принудительная перерисовка флеш через swfObgect:
so.write("flashcontent"); |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:22. |
|
|
« Предыдущая тема | Следующая тема » |
|
|