insected
13.11.2008, 02:35
Знаю, что подобных тем тьма, но почему то все очевидные и советуемые решения из них не срабатывают.
есть флеш:
package {
import flash.display.Sprite;
import flash.external.ExternalInterface;
import flash.system.Security;
public class SoundJs extends Sprite
{
[Embed(source="sounds.swf", symbol="sound1")]
private var soundType:Class;
private var soundObject:Sprite;
public function SoundJs()
{
Security.allowDomain("*");
ExternalInterface.addCallback("sound",Play);
}
public function Play():void
{
soundObject = new soundType();
addChild(soundObject);
}
}
}
Есть html:
<html>
<script language="Javascript">
function playIt(){
thisMovie("myMovie").sound();
}
function thisMovie(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName];
} else {
return document[movieName];
}
}
</script>
<object width="100" height="100" align="left">
<param name="allowScriptAccess" value="always" />
<param name="movie" value="SoundJs.swf" />
<embed
src="http://xx.xxx.xx.xxx/xxx/xxx/SoundJs.swf"
quality="high" bgcolor="#ffffff" width="10" height="10"
name="myMovie" align="middle"
allowScriptAccess="always"
type="application/x-shockwave-flash"/>
</embed>
</object>
<form>
<input type="button" onclick="playIt()" value="ГСОМЕ!" />
</form>
</html>
В мозилле работает, в IE нет. на строчке thisMovie("myMovie").sound(); кидается ошибка Object doesn`t support property or method. Во всех туториалах подобный код приводится в качестве примера, так почему же он не работает??
есть флеш:
package {
import flash.display.Sprite;
import flash.external.ExternalInterface;
import flash.system.Security;
public class SoundJs extends Sprite
{
[Embed(source="sounds.swf", symbol="sound1")]
private var soundType:Class;
private var soundObject:Sprite;
public function SoundJs()
{
Security.allowDomain("*");
ExternalInterface.addCallback("sound",Play);
}
public function Play():void
{
soundObject = new soundType();
addChild(soundObject);
}
}
}
Есть html:
<html>
<script language="Javascript">
function playIt(){
thisMovie("myMovie").sound();
}
function thisMovie(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName];
} else {
return document[movieName];
}
}
</script>
<object width="100" height="100" align="left">
<param name="allowScriptAccess" value="always" />
<param name="movie" value="SoundJs.swf" />
<embed
src="http://xx.xxx.xx.xxx/xxx/xxx/SoundJs.swf"
quality="high" bgcolor="#ffffff" width="10" height="10"
name="myMovie" align="middle"
allowScriptAccess="always"
type="application/x-shockwave-flash"/>
</embed>
</object>
<form>
<input type="button" onclick="playIt()" value="ГСОМЕ!" />
</form>
</html>
В мозилле работает, в IE нет. на строчке thisMovie("myMovie").sound(); кидается ошибка Object doesn`t support property or method. Во всех туториалах подобный код приводится в качестве примера, так почему же он не работает??