![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
вот такой код (сгенерированный swfobject_generator_1_2):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.registerObject("test", "9.0.0", "expressInstall.swf");
</script>
</head>
<body>
<div>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%" id="test">
<param name="movie" value="test.swf" />
<param name="allowfullscreen" value="true" />
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="test.swf" width="100%" height="100%">
<param name="allowfullscreen" value="true" />
<!--<![endif]-->
<a href="http://www.adobe.com/go/getflashplayer">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
</div>
</body>
</html>
если задать явный размер, то все отображается нормально видел похожую тему, но не совсем понял, как воспользоваться этим решением (и есть подозрение, что решаться должно по другому как-то) |
|
|||||
|
Модрон-ветеринар
|
Попробуйте сделать следующее - скачайте свежий SWFObject и опубликуйте флешку с помощью динамического метода.
Вот здесь описано, как (глава "Динамический метод публикации с помощью SWFObject"). С ним никаких проблем не возникало ни в каких браузерах. Кроме IE9 - сказать просто не могу - не было возможности проверить в своих проектах. Но жалоб не поступало. Вот пример одного старого проекта со 100% по ширине и высоте, проверьте как он в IE9 будет. Если ок, возьмите за основу код публикации. PS. Вообще, подозреваю, что проблема может быть оттого, что 100% высоту не все браузеры могут корректно отразить. То есть <div> с неопределенными размерами (или = 100%) по сути пуст до публикации в нем <object>. Как точно тот или иной браузер производит рендер в этой ситуации, не могу сказать, но как вариант попробуйте задать 100% размеры обрамляющему блоку (в примере выше так и сделано).
__________________
Идите первым! Последний раз редактировалось mooncar; 15.07.2012 в 17:47. |
|
|||||
|
в общем никак не получилось подружить SwfObject2 и 100% (ни статическим ни динамическим методами)
но я нашел у себя версию SwfObject1.5 и там всё работает пока на этом остановлюсь похоже что со второй версией нужны дополнительные манипуляции upd сразу не увидел, что вы добавили пример там как-раз SwfObject2.2 и согласно исходному коду, нужно <div> для контента обернуть в еще один <div>, которому мы укажем 100% ширину и высоту теперь всё работает и со второй версией спасибо ![]() Последний раз редактировалось RedGrAg; 15.07.2012 в 20:19. |
|
|||||
|
Модрон-ветеринар
|
Пожалуйста. Замечу только, что в результате конструкция получается точно такая же - один внешний <div> (со 100%) и внутри него будет тот же <object> (который встает на место "внутреннего" <div>). Это легко проверить, проанализировав DOM-структуру результирующей страницы, открытой в браузере.
__________________
Идите первым! Последний раз редактировалось mooncar; 15.07.2012 в 21:26. |
|
|||||
|
Регистрация: Jul 2007
Сообщений: 393
|
Во второй версии удаляется весь контент, с которым идет связывание, раньше удалялось только содержимое(тот самый вложенный div).
|
|
|||||
|
Модрон-ветеринар
|
В каком смысле? Я не очень понял, о чем вы, поясните.
Вот исходник страницы: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="ru">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
....
<script type="text/javascript" src="js/swfobject.js"></script>
<script type="text/javascript">
var flashvars = false;
var params = { menu: 'false', allowScriptAccess: 'always', allowFullScreen: 'true', quality: 'high', bgcolor: '#000000', wmode: 'window' };
var attributes = { id:'genplan_object' };
swfobject.embedSWF('flash/genplan.swf', 'genplan', '100%', '100%', '9.0.0', 'flash/expressInstall.swf', flashvars, params, attributes);
</script>
</head>
<body>
<div style="width:100%; height:100%; position:absolute" id="genplan_cont">
<div id="genplan"></div>
</div>
</body>
</html>
Внешний <div> - вообще ведь к произвольной верстке относится. Я же сколько угодно могу сделать таких <div>-оберток.
__________________
Идите первым! |
|
|||||
|
Регистрация: Jul 2007
Сообщений: 393
|
версии до 2.0 удаляют только текст "ваш браузер не поддерживает flash", заменяя его связкой object+embed, а 2.0 удаляет весь контейнер, не только его содержимое.
Вы в примере цепляетесь к вложенному диву "genplan", 2.0 удалит вложенный див "genplan", а 1.5 только добавит в что полагается, так как он и так пуст(иначе его предварительно очистили бы). |
|
|||||
|
Модрон-ветеринар
|
Ясно. Так-то да. SWFObject начал использовать с 2.0, так что нюанс этот не сразу понял.
__________________
Идите первым! |
![]() |
![]() |
Часовой пояс GMT +4, время: 20:18. |
|
|
« Предыдущая тема | Следующая тема » |
|
|