var videoObject = { container: ‘.videosamplex’,//“#”代表容器的ID,“.”或“”代表容器的class variable: ‘player’,//该属性必需设置,值等于下面的new chplayer()的对象 autoplay:true,//自动播放 loaded:‘loadHandler’, video: list_url,//视频地址 }; if(cookieTime > 0) { //如果记录时间大于0,则设置视频播放后跳转至上次记录时间 videoObject[‘seek’] = cookieTime; } player=new ckplayer(videoObject);
//记忆播放功能–start
function loadHandler() { player.addListener('time', timeHandler); //监听播放时间 player.addListener('ended', VideoPlayEndedHandler);//监听播放结束 } var t1=0; function timeHandler(t) { cookie.set('time_' + videoID, t); //当前视频播放时间写入cookie t1=t; player.addListener('pause', Pause); //这个作用是监听视频暂停 Pause()主要是用来监听到暂停时需要采取的行为 } function VideoPlayEndedHandler(){//监听视频播放完成 //更新状态为2 表示已完成! var data={"djpx_video_play_id": djpx_video_play_id}; $.ajax({ type: 'POST',//方法类型 dataType: "json",//预期服务器返回的数据类型 url: webUrl+'/djpx_video/changestate2',//url contentType: "application/json; charset=utf-8", data: JSON.stringify(data), async:false, beforeSend: function(xhr) { //alert(token); token = window.localStorage.getItem('token'); xhr.setRequestHeader("Authorization",token); }, success: function (result) { if (result.code == 200) { if(urlArray==""){ $("#state_name_0").html("<p style='color: seagreen'>已看完</p>"); }else{ $("#"+state_name_id+"").html("<p style='color: seagreen'>已看完</p>"); urlArray=""; } } else { alert(result.message); } ; }, error: function () { alert("操作失败"); } }); //视频播放完毕 更新表中视频进度 Pause(); } //监听视频暂停和播放完成时时---更新进度表Pause function Pause(){ var data={"djpx_video_play_id": djpx_video_play_id,"play_schedule":t1}; $.ajax({ type: 'POST',//方法类型 dataType: "json",//预期服务器返回的数据类型 url: webUrl+'/djpx_video/addPlaySchedule',//url contentType: "application/json; charset=utf-8", data: JSON.stringify(data), async:false, beforeSend: function(xhr) { token = window.localStorage.getItem('token'); xhr.setRequestHeader("Authorization",token); }, success: function (result) { if (result.code == 200) { } else { alert(result.message); } ; }, error: function () { alert("操作失败"); } }); } //end//从数据库中读取保存的进度,就算cookie已经被清除还是会从之前最后播放的位置开始播放 var cookieTime = cookie.get(‘time_’ + videoID); //调用已记录的time if(!cookieTime || cookieTime == undefined) { //如果没有记录值,则设置时间0开始播放 cookieTime =0; //alert(cookieTime); } if (cookieTime==0){//这个playSchedule是从数据库中取出来的值–当cookieTime的值没有数据时才会用数据库中取出数据来填入cookieTime $.ajax({ type: ‘POST’,//方法类型 dataType: “json”,//预期服务器返回的数据类型 url: webUrl+’/djpx_video/findPlaySchedule’,//url contentType: “application/json; charset=utf-8”, data: JSON.stringify({“djpx_video_play_id”: videoID}), async:false, beforeSend: function(xhr) { //alert(token); token = window.localStorage.getItem(‘token’); xhr.setRequestHeader(“Authorization”,token); }, success: function (result) { if (result.code == 200) { cookieTime=result.data.playSchedule; //alert(cookieTime);
} else { alert(result.message); } ; }, error: function () { alert("操作失败"); } }); }