当视频停止或播放完成时,Google SWFObject javascript检测

当视频停止或播放完成时,Google SWFObject javascript检测,javascript,swfobject,Javascript,Swfobject,大家好 这是我在stackoverflow上的第一篇帖子,我过去一直是一个坐在后面看这里发生了什么的人,从来没有参与过,但现在我终于有机会了 我的问题是我有一个swf文件,我正在使用SWFObject在html页面上播放它,现在我想实现一个javascript方法,当视频完全播放或停止时触发 这是我的密码 养老金增加 var so=新的SWFObject('https://aimhighermarketing.s3.amazonaws.com/videocontrollers/player.s

大家好

这是我在stackoverflow上的第一篇帖子,我过去一直是一个坐在后面看这里发生了什么的人,从来没有参与过,但现在我终于有机会了

我的问题是我有一个swf文件,我正在使用SWFObject在html页面上播放它,现在我想实现一个javascript方法,当视频完全播放或停止时触发

这是我的密码

养老金增加
var so=新的SWFObject('https://aimhighermarketing.s3.amazonaws.com/videocontrollers/player.swf","mp1","640","480","10",;
so.addParam('allowscriptaccess','always');
so.addParam('allowfullscreen','true');
so.addVariable('frontcolor','ffffffff');
so.addVariable('lightcolor','FFFFFF');
so.addVariable('screencolor','ffffffff');
so.addParam('flashvars','&file=HTTP://soci7361@socialnetworkbizbuilder.com/videos/pbsalesvideov2.mp4&&controlbar=none&autostart=true');
所以,写('player');

,非常感谢您的帮助。。 请帮忙


谢谢

我很乐意为您提供帮助,但不幸的是,您遗漏了非常重要的信息。SWFObject只是一个将对象标记安全地放置在用户浏览器上的工具。还记得那些你必须点击对象标签才能激活它的日子吗?SWFObject解决了这个问题。。。还有更多

我们需要知道的是您使用的是哪个视频播放器?Flash实际上是将事件触发到javascript的程序,而javascript正是您要监听的程序

其中最流行的通常是JWPlayer或Flowplayer

如果你能让我们知道它是哪一种,或者你使用的是哪种flash播放器,我很乐意为你做一些快速的研究


没关系,我刚刚访问了您的SWF文件,发现它是JW Player 4

以下是用于侦听事件更改的JS代码:

var player;
function playerReady(object) {
  player = document.getElementById(object.id);
    player.addModelListener("state","playerStateChanged");
}
function playerStateChanged(obj) {
    if (obj.newstate == 'COMPLETED') {
        // Your video has finished playing
    } else if (obj.oldstate == 'IDLE' AND obj.newstate == 'PLAYING') {
        // Your video started to play. Now, this is not fully accurate. IDLE can also mean they pressed STOP and sat there.
    }
}
实际上,你应该有一个“startedVideo=false”;在第一次播放时将其更改为true。然后你就能知道它是什么时候开始播放的

即使JWPlayer升级到了版本5,他们仍然有完整的JS API在线文档:

var player;
function playerReady(object) {
  player = document.getElementById(object.id);
    player.addModelListener("state","playerStateChanged");
}
function playerStateChanged(obj) {
    if (obj.newstate == 'COMPLETED') {
        // Your video has finished playing
    } else if (obj.oldstate == 'IDLE' AND obj.newstate == 'PLAYING') {
        // Your video started to play. Now, this is not fully accurate. IDLE can also mean they pressed STOP and sat there.
    }
}