jwplayer播放器seek事件生效

今天用JWplayer播放视频,要求左右两视频对比,
 由于左右视频时间不同步,所以要求右面视频开始播放时间要跳转N秒
 以前做过类似的东西,以为很简单,只要用时间跳转就可以了
  player2.sendEvent('seek', N秒) ;
 出乎自己的意料,没有成功,开始怀疑方法是不是写错了
 再刷新再试了十多次之后,发现加入断点之后能成功,去掉断点就不行
 在网上打了N多资料之后,决定从状态入手;
  if (obj["newstate"] == "PLAYING") { 
   player2.sendEvent('seek', '${vc.initFileName}');; 
  } 
结论:只有在其播放的状态下,调用Seek才生效;

原文代码如下:

Ext.onReady(function() {
		var filepath = '${vedioUrl}';
		 
		// 创建播放器对象
	   
		var player = new SWFObject('./lib/player/player.swf', 'jw', '470', '425', '9', '#ffffff');
		player.addParam('allowfullscreen', 'true');
		player.addParam('allowscriptaccess', 'always');
		player.addParam('wmode', 'opaque');
		player.addParam('flashvars', 'file=${vc.videoUrl}&bufferlength=10&stretching=uniform&autostart=true&skin=./lib/player/skin/kleur.swf');
		player.write('player');
		
		
		loadKeyframe('${fileId}');


		var player2 = new SWFObject('./lib/player/player.swf', 'jw2', '470', '425', '9', '#ffffff');
		player2.addParam('allowfullscreen', 'true');
		player2.addParam('allowscriptaccess', 'always');
		player2.addParam('wmode', 'opaque');
		player2.addParam('flashvars', 'file='+filepath);
		player2.write('player2');
	   
	});
 var player2 ;
 function playerReady(obj){
	 if(obj.id=='jw2'){
	   	player2  = document.getElementById(obj['id']);
	 
	 
	 	player2.sendEvent('play',true);
	 	player2.sendEvent('volume',3);
	
	 	player2.addModelListener("STATE", "stateTracker"); 
	 }
} 
//状态监控回调函数  
 function stateTracker(obj) {  
	 /**if (obj["newstate"] == "PAUSED") {  
		 alert(1111);  
	 }  
	 if (obj["newstate"] == "COMPLETED") {  
		 alert(222);
	 }  */
	 if (obj["newstate"] == "PLAYING") {  
		 player2.sendEvent('seek', '${vc.initFileName}');;  
	 }  
 }  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值