所以,我有一个网页,它使用javascript让用户选择不同的音频文件来收听(使用这个播放器:http://www.macloo.com/examples/audio_player/),除了任何版本的IE之外,它在每个浏览器中都能很好地工作。在音频开始播放之后,我无法找到一种编程方式,在用户点击另一个要收听的项目后停止播放音频。我无法访问swf的源代码,因此我尝试使用javascript来执行此操作。我甚至更换了页面的整个主体 - $(“body”)。html(“blank”) - 但它仍然播放了加载到swf中的音频。
有没有什么方法可以使用javascript从页面(声音和所有)中完全删除swf?
答案 0 :(得分:0)
你可以尝试
location.href = location.href;
这将完全重新加载页面。
答案 1 :(得分:0)
你试过吗?
$('object').remove();
答案 2 :(得分:0)
好吧,你可能需要使用外部接口并从javascript调用flash方法,而flash方法将删除swf文件。如果您在Flash Player 10中使用Action-Script 3,则可以使用unloadAndStop()方法。此方法将卸载您的swf并将删除其所有事件和声音等。最好使用unloadAndStop()方法而不是unload()方法。
如果你想从服务器页面隐藏flash,你有很多方法,用查询字符串中传递的变量调用页面刷新,根据该变量值,你可以隐藏/显示你的swf文件。如果你确实想用JavaScript做,那么把你的swf带到Div并隐藏那个Div ..
答案 3 :(得分:0)
好吧,我尝试了所有提出的解决方案,但它们并不适用于所有浏览器。 :(我最终做的是加载iframe中的flash内容 - 当我更改src时,它会完全可靠地杀死播放的音频。我想这可能是因为音频似乎是流媒体?呃,无论如何 - iframe时间!