我一直在网上搜索过去2小时左右如何做到这一点并且没有取得任何进展..
所以基本上我想在点击图像时播放nav.swf。
nav.swf代码:
object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="1" height="1" id="nav" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value="nav.swf" /><param name="menu" value="false" /><param name="quality" value="high" /><param name="wmode" value="transparent" /><param name="bgcolor" value="#ffffff" /> <embed src="nav.swf" menu="false" quality="high" wmode="transparent" play="false" flashvars="autoplay=false&play=false bgcolor="#ffffff" width="1" height="1" name="nav" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
我该怎么做?
答案 0 :(得分:0)
.swf文件是Flash视频文件。按照这些方法播放.swf文件。
方法1:
您可以添加object元素并在div / image的"onclick"
事件上设置属性。
然后将"autostart"
属性设置为true。这应该可以解决问题。
我们将在下面的div中添加object元素。
<div id="video_wrapper"></div>
假设div id为“video_div”,你将点击它,使用下面的代码。
document.getElementById("video_div").addEventListener("click", playVideo);
function playVideo() {
var obj = document.createElement('object');
obj.setAttribute('data', 'nav.swf');
obj.setAttribute('autostart', true);
obj.setAttribute('play', true);
document.getElementById('video_wrapper').appendChild(obj);
}
同时检查 swfobject
<强>方法2:强> 您可以使用ExternalInterface从Javascript调用Actionscript函数。 请参阅文档here
答案 1 :(得分:0)
使用外部接口。 AS3代码:
//call from javascript
ExternalInterface.addCallback("playSoundInFlash", as3Function);
function as3Function():void
{
// play sound here
}
在JS中,做一些像:
<head>
<script language="Javascript">
function thisMovie(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName]
}
else {
return document[movieName]
}
}
function playSound () {
thisMovie("nav.swf").playSoundInFlash();
}
</script>
</head>
<body>
<img src="myimage.jpg" onclick="javascript: playSound();" />
</body>