html 中 SWF 文件的高度和宽度

2023-12-23

在下面的代码中,只有按钮图像被嵌入到flex代码中。但是在html对象或嵌入标签中,为什么必须指定高度和宽度。即使这是一个普通的按钮,如果我们不指定高度和宽度宽度似乎有一些错误

html

<div align="center">
    <br />
    <div style="display:block;width:100px;height:100px;" id="audio" 
        class="testsound" align="center"/>
    <p class="clickable">
        <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" 
        width="400" height="100" id="myMovieName">
            <param name="movie" value="/media/players/testsound.swf"/>
            <param name="soundurl" value="/media/players/music.mp3"/>
            <param name="quality" value="high"/>
            <param name="bgcolor" value="#FFFFFF"/>
            <embed width="100" height="100" href="/media/players/testsound.swf" 
                src="/media/players/testsound.swf" 
                flashvars="soundUrl=/media/players/music.mp3" 
                quality="high" bgcolor="#FFFFFF" 
                name="myMovieName" loop="false" align=""
                type="application/x-shockwave-flash">
            </embed>
        </object>
    </p>
</div>

MXML

<?xml version="1.0"?>
<!-- embed/EmbedSound.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:Script>
        <![CDATA[

            import flash.media.*; 

            public var snd:Sound = new sndCls() as Sound; 
            public var sndChannel:SoundChannel;

            public function playSound():void {
                sndChannel=snd.play();
            }   

        ]]>
    </mx:Script>
    <mx:Image id="loader1" click="playSound();"
        source="@Embed(source='/opt/cloodon/site/media/img/speaker.gif')" />
</mx:Application>

嵌入标签中的高度和宽度是必需的属性。看看swf对象 http://code.google.com/p/swfobject/wiki/documentation or Adobe http://kb2.adobe.com/cps/415/tn_4150.html关于标签定义以及必需和可选属性 http://kb2.adobe.com/cps/127/tn_12701.html#main_Required_attributes.

你在问吗why它们是必需的,或者如果没有它们,为什么您的页面会损坏(提示,第一个答案是第二个问题)?

EDIT:

您应该将 EMBED 和 OBJECT 标记的宽度和高度属性修改为与 swf 的大小完全一致。

您可以在 .mxml 中设置应用程序的宽度和高度

<mx:Application width="300" height="200">

如果将scaleMode 设置为“noScale”,您将不会在swf 中看到任何缩放。

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;

如果您使用的是 Actionscript 3(您应该是),您可以在主类中设置元数据。

i.e.

[SWF(width="640", height="480")]
public class MyClass extends Sprite
{
    public function MyClass()
    {
        stage.scaleMode = StageScaleMode.NO_SCALE;
        stage.align = StageAlign.TOP_LEFT;
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

html 中 SWF 文件的高度和宽度 的相关文章