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

Тема в разделе "Флеш", создана пользователем new_forward, 17 апр 2010.

Статус темы:
Закрыта.
  1. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    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:
     
  2. killaman

    killaman Постоялец

    Регистр.:
    19 май 2009
    Сообщения:
    72
    Симпатии:
    7
    вот тебе информация в помощь по swfobject-2
    http://designformasters.info/posts/flash-embed-with-swfobject-2/
     
  3. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    44
    Если применить тот метод как у них зделано то у меня не все переменные передаються я имею ввиду если присобачить через 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:
     
  4. lekusya

    lekusya Создатель

    Регистр.:
    16 мар 2010
    Сообщения:
    22
    Симпатии:
    3
    А если write("conf") вызвать уже на кнопке?
    Т.е. мысль такая: убрать style="display: none;", и по нажатии на кнопку не менять стиль, а в пустой див вписывать флэш, а потом таким же образом стирать.
    Офф: на кой в диве align = "center" ?
     
  5. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    44
    Зделал вот так:

    Код:
    <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:


    Все работает обновляется, но только с ИЕ таже трабла...ну ладно...
     
  6. lekusya

    lekusya Создатель

    Регистр.:
    16 мар 2010
    Сообщения:
    22
    Симпатии:
    3
    Ентеры лишние в строке с кодом объекта
    Ну и вообще красивее будет так:
    Код:
    <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. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    44
    Да красиво но все равно сути не меняет...в ие не разворачивается..
     
  8. lekusya

    lekusya Создатель

    Регистр.:
    16 мар 2010
    Сообщения:
    22
    Симпатии:
    3
    Я проверила, перед тем как отправить - развернулось (ИЕ7/ИЕ8 + нормальные браузеры). Может там что-то другое мешает? Стили какие-нибудь? Испытайте этот кусок отдельно.
     
  9. Чибуратор

    Чибуратор Создатель

    Регистр.:
    4 фев 2008
    Сообщения:
    15
    Симпатии:
    0
    А если размеры диву прописать конкретные?
    Версия ИЕ какая?
     
  10. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    44
    Короче говоря потестировал я и делаю вывод что флешка как то не получает размеры для масштабирования...

    Кому интересно исходник можно скачать здесь:http://www.flashdevs.com/shout_box/features/

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

    Вложения:

    • screen.jpg
      screen.jpg
      Размер файла:
      29,3 КБ
      Просмотров:
      3
Статус темы:
Закрыта.