Salut,
Je travaille sur une animation qui charge et lit un fichier mp3.
l'animation serait déclencher par un clic sur un lien qui se trouve dans ma page html.
J'essaie d'utiliser la fonction ExternalInterface.addCallback mais j'ai un message d'erreur dans la console javascript qui me dit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
thisMovie("Player").getInfo is not a function
J'avais d'abord un exemple tout simple (qui marchait) en me basant sur le doc Adobe et le site de Jean Philippe http://jeanphiblog.media-box.net/dot...ernalinterface
J'ai ensuite essayé de refaire la même chose dans mon lecteur mp3, mais avec le succès que vous connaissez

code as
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
var methodName:String = "getInfo";
var instance:Object = null;
var method:Function = setInfo;
var wasSuccessful:Boolean = ExternalInterface.addCallback(methodName, instance, method);
 
function setInfo(songInfo:String):Void{
	var info:Array = songInfo.split("#");
	playSong(info);
}
page html
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<script>
function callExternalInterface(i) {
    thisMovie("player").getInfo(i);
}
 
function thisMovie(movieName) {
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName]
    }
    else {
        return document[movieName]
    }
}
</script>
 
</head>
<body bgcolor="#000000">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="550" height="400" id="player" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="musicPlayer.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#000000" />
<embed src="musicPlayer.swf" quality="high" bgcolor="#000000" width="550" height="400" name="player" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
 
<form>
    <input type="button" onClick="callExternalInterface('artist#titre#mp3/Banquet.mp3')" value="Call ExternalInterface" />
</form>