[Помощь] swf object не работает в ИЕ?

Статус
В этой теме нельзя размещать новые ответы.

new_forward

Профессор
Регистрация
5 Май 2008
Сообщения
673
Реакции
44
Вставляю флешку через swf object и задаю ей размеры:

Код:
<div id="conf" align = "center" style="display: none;">This text is replaced by the Flash movie.</div>
	<script language="javascript" src="/chat/js/swfobject.js"></script> 
	<script type="text/javascript">
		var so = new SWFObject("/chat/Shoutbox.swf", "shoutbox", "987", "500", "9.0.115", "#80FF00");
		so.addVariable("serverURL", "/chat/server/php/shoutbox.php");
		so.addVariable("refreshTime", "3");
		so.addVariable("title", "PlayMax");
		so.write("conf");
	</script>

а Интернет Эксплорере масштабирование флешки не работает и флешка отображается со своими стандартніми размерами 200х200...:nezn:
 
вот тебе информация в помощь по swfobject-2
*** скрытое содержание ***
Если применить тот метод как у них зделано то у меня не все переменные передаються я имею ввиду если присобачить через flashvars...хотя может я не так делаю...
Пришлось вставить обычным способом:
Код:
<object height="500" width="100%" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">
            <param value="false" name="allowFullScreen" />
            <param value="/chat/Shoutbox.swf?serverURL=/chat/server/php/shoutbox.php&amp;refreshTime=3&amp;title=PlayMax" name="movie" />
            <param value="opaque" name="wmode" />
            <param value="#80FF00" name="bgcolor" />  
			<embed height="500" width="100%" allowfullscreen="false" bgcolor="#80FF00" type="application/x-shockwave-flash" src="/chat/Shoutbox.swf?serverURL=/chat/server/php/shoutbox.php&amp;refreshTime=3&amp;title=PlayMax"></embed>   </object>

Но дело в том что флеш у меня находиться в
Код:
<div id="conf" align = "center" style="display: none;"></div>
и показывается при нажатии на кнопку через javascript ну и скрывается соответственно...вот поэтому в IE не срабатывает масштабирование...:confused:
 
А если write("conf") вызвать уже на кнопке?
Т.е. мысль такая: убрать style="display: none;", и по нажатии на кнопку не менять стиль, а в пустой див вписывать флэш, а потом таким же образом стирать.
Офф: на кой в диве align = "center" ?
 
Зделал вот так:

Код:
<script language="JavaScript" type="text/JavaScript">
function foo(id) {

var player_big = '<object height="500" width="100%" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">
            <param value="false" name="allowFullScreen" />
            <param value="/chat/Shoutbox.swf?serverURL=/chat/server/php/shoutbox.php&amp;refreshTime=3&amp;title=PlayMax" name="movie" />
            <param value="opaque" name="wmode" />
            <param value="#80FF00" name="bgcolor" />  
			<embed height="500" width="100%" allowfullscreen="false" bgcolor="#80FF00" type="application/x-shockwave-flash" src="/chat/Shoutbox.swf?serverURL=/chat/server/php/shoutbox.php&amp;refreshTime=3&amp;title=PlayMax"></embed>   </object>';
			
var player_mini = '<object height="200" width="100%" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">
            <param value="false" name="allowFullScreen" />
            <param value="/chat/Shoutbox.swf?serverURL=/chat/server/php/shoutbox.php&amp;refreshTime=3&amp;title=PlayMax" name="movie" />
            <param value="opaque" name="wmode" />
            <param value="#80FF00" name="bgcolor" />  
			<embed height="200" width="100%" allowfullscreen="false" bgcolor="#80FF00" type="application/x-shockwave-flash" src="/chat/Shoutbox.swf?serverURL=/chat/server/php/shoutbox.php&amp;refreshTime=3&amp;title=PlayMax"></embed>   </object>';

if(id == 'b_open'){
 
document.getElementById(id).style.display = "none";
document.getElementById('b_close').style.display = "";
document.getElementById('chat').innerHTML= player_big;
} else {
document.getElementById(id).style.display = "none";
document.getElementById('b_open').style.display = "";
document.getElementById('chat').innerHTML= player_mini;
 }

}
</script>  
 
 
<a id="b_open" href="#" onclick="foo('b_open')">Раскрыть</a>

<a id="b_close" href="#" onclick="foo('b_close')" style="display:none;">Свернуть</a>

<div id="chat">Флеш маленький</div>

Только почемуто через переменные player_big и player_mini не работает а если подставить обычный текст то все работает...:nezn:


Все работает обновляется, но только с ИЕ таже трабла...ну ладно...
 
Ентеры лишние в строке с кодом объекта
Ну и вообще красивее будет так:
Код:
<a id="b_open" href="#" onclick="foo('b_open'); return false">Раскрыть</a>
<a id="b_close" href="#" onclick="foo('b_close'); return false" style="display:none;">Свернуть</a>
<div id="chat">Флеш маленький</div>
<script language="JavaScript" type="text/JavaScript">
function foo(id) {
	document.getElementById(id).style.display = "none";
	if(id == 'b_open'){
		document.getElementById('b_close').style.display = "";
		document.getElementById('chat').innerHTML=swf(500);
	} else {
		document.getElementById('b_open').style.display = "";
		document.getElementById('chat').innerHTML=swf(200);
 	}
}
function swf(h) {
	var so = '<object height="'+h+'" width="100%" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">             <param value="false" name="allowFullScreen" />             <param value="/chat/Shoutbox.swf?serverURL=/chat/server/php/shoutbox.php&amp;refreshTime=3&amp;title=PlayMax" name="movie" />             <param value="opaque" name="wmode" />   <param value="#80FF00" name="bgcolor" />			<embed height="'+h+'" width="100%" allowfullscreen="false" bgcolor="#80FF00" type="application/x-shockwave-flash" src="/chat/Shoutbox.swf?serverURL=/chat/server/php/shoutbox.php&amp;refreshTime=3&amp;title=PlayMax"></embed>   </object>'
	return so
}
</script>
 
Да красиво но все равно сути не меняет...в ие не разворачивается..
 
Я проверила, перед тем как отправить - развернулось (ИЕ7/ИЕ8 + нормальные браузеры). Может там что-то другое мешает? Стили какие-нибудь? Испытайте этот кусок отдельно.
 
А если размеры диву прописать конкретные?
Версия ИЕ какая?
 
Короче говоря потестировал я и делаю вывод что флешка как то не получает размеры для масштабирования...

Кому интересно исходник можно скачать здесь:Для просмотра ссылки Войди или Зарегистрируйся

Там есть исходник для флекса еслиб знать как скомпелировать новый свф с нужными уже размерами...?
 

Вложения

  • screen.jpg
    screen.jpg
    29,3 KB · Просмотры: 3
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху