2011-04-01 68 views

回答

2

actionscript reference一个例子:

package { 
    import flash.display.Sprite; 
    import flash.events.*; 
    import flash.media.Sound; 
    import flash.media.SoundChannel; 
    import flash.net.URLRequest; 

    public class SoundExample extends Sprite { 
     private var url:String = "MySound.mp3"; 
     private var song:SoundChannel; 

     public function SoundExample() { 
      var request:URLRequest = new URLRequest(url); 
      var soundFactory:Sound = new Sound(); 
      soundFactory.addEventListener(Event.COMPLETE, completeHandler); 
      soundFactory.addEventListener(Event.ID3, id3Handler); 
      soundFactory.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); 
      soundFactory.addEventListener(ProgressEvent.PROGRESS, progressHandler); 
      soundFactory.load(request); 
      song = soundFactory.play(); 
     } 

     private function completeHandler(event:Event):void { 
      trace("completeHandler: " + event); 
     } 

     private function id3Handler(event:Event):void { 
      trace("id3Handler: " + event); 
     } 

     private function ioErrorHandler(event:Event):void { 
      trace("ioErrorHandler: " + event); 
     } 

     private function progressHandler(event:ProgressEvent):void { 
      trace("progressHandler: " + event); 
     } 
    } 
} 

您可以在上面结合与LoaderInfo的参数:这些都是通过HTML或参数用来调用swf的网址通过Flash变数。

在参考文献中有很多很好的例子,我主要通过gotoandlearn.comthe reference了解到actionscript。

0

通过设置flashvar,您可以设置将url传递给swf。你可以用两种方式设置flashvars ..使用嵌入代码上的param元素,或者你可以将它们追加到swf的url,结果是一样的。

http://blog.six4rty.ch/tutorials/flash-flashvars-in-as3/

如果你不知道的MP3链接,当你加载你必须使用ExternalInterface ActionScript方法来注册一些动作功能,所以你可以从网页上的JavaScript调用他们瑞士法郎。因此,在您的Flash影片,你可以有

function setSrc(mp3URL) { ... } 
function play(){ ... } 
function stop(){ ... } 

寄存器每一种与外部接口

ExternalInterface.addCallback('setSrc', setSrc); 
ExternalInterface.addCallback('play', play); 
ExternalInterface.addCallback('stop', stop); 

现在你可以从JavaScript中使用它们。