当jquery .animate完成时开始播放swf

时间:2012-05-25 02:47:23

标签: javascript jquery flash jquery-ui

我在隐藏的div中有一个swf。它在第1帧中停止,我希望它在jquery脚本完成时开始播放。这是我的代码:

    function doFlash() {
    $("#first_menu").hide("clip", { direction: "vertical" }, 500, function() {
    $('#flash_container').animate({top: 0}, 1500, function(){
    getElementById('FlashID').Play()});});
    };

但它根本不工作,它做动画但不开始播放swf。提前完成。

更新:wmode:透明问题现已解决,但swf仍未在FF和Chrome中播放。我使用swfobject作为FabrícioMatté建议我,但由于某种原因它只是在IE中工作。我想也许是关于该项目的内容,但我不确定。以下是示例的链接:http://molcajete.com.mx/natura/videos_fito/感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

此API:http://api.jquery.com/stop/.is('animate')可能有助于检查动画是否已完成。

此外,如果您愿意,可以设置动画完成时调用的回调:http://docs.jquery.com/Effects/animate

示例代码

if( $("#fooDov").is(":animated") ){
  alert("HULK!");
}

您的代码

  function doFlash() {
    $("#first_menu").hide("clip", { direction: "vertical" }, 500, function() {
    $('#flash_container').animate({top: 0}, 1500, function(){
       if( $(this).is(":animated") )
            getElementById('FlashID').Play()});});
    };

答案 1 :(得分:0)

似乎我只需要在对象上写'名字'。