search

Home  >  Q&A  >  body text

前端 - javascript 控制flash暂停的---可是----不成功

在新浪视频播放的时候 我插入了下面的代码 希望通过js控制flash视频暂停和播放,但是不能成功

javascript代码如下:

function getFlashMovieObject(movieName){
  if (window.document[movieName]) {  
      return window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1){
     if (document.embeds && document.embeds[movieName])
     return document.embeds[movieName]; 
     }else{
        return document.getElementById(movieName);
  }
}
 var flash = getFlashMovieObject("myMovie");
 alert(flash);//弹出了object HTMLEmbedElement  获取flash对象成功
 flash.StopPlay();
 alert("ok");//弹出ok

每一个alert都执行了,唯独flash仍然在播放 请问哪里错了????????

阿神阿神2896 days ago659

reply all(1)I'll reply

  • 天蓬老师

    天蓬老师2017-04-10 12:49:17

    先确认一下新浪视频flash播放器有没有注册这个叫StopPlay的方法给容器。你可以只alert(flash.StopPlay)看看。如果有的话,再试试用以下方法调用

    function callFlash(functionName, argumentArray) {
        argumentArray = argumentArray || [];
    
        var movieElement = this.getMovieElement();
        var returnValue, returnString;
    
        // Flash's method if calling ExternalInterface methods (code adapted from MooTools).
        try {
                returnString = movieElement.CallFunction('<invoke name="' + functionName + '" returntype="javascript">' + __flash__argumentsToXML(argumentArray, 0) + '</invoke>');
                returnValue = eval(returnString);
        } catch (ex) {
                throw "Call to " + functionName + " failed";
        }
    
        // Unescape file post param values
        if (returnValue != undefined && typeof returnValue.post === "object") {
                returnValue = this.unescapeFilePostParams(returnValue);
        }
    
        return returnValue;
    

    };

    reply
    0
  • Cancelreply