某网站的videojs的配置及操作
某网站的videojs的配置及操作
一、总结
一句话总结:
多参照参照别人的例子就好,省事
1、videojs如何获取用户当前视频的位置?
this.currentTime()
2、回到视频开始处?
player.currentTime(0);
二、内容在总结中
options={
playbackRates: [1,1.25,1.5,1.75,2],
controlBar: {
volumePanel: {
inline: false //默认是true,横着的
}
}
};
player=videojs('my-video',options);
player.ready(function() {
this.hotkeys({
volumeStep: 0.1,
seekStep: 5,
enableVolumeScroll: false,
enableModifiersForNumbers: false
});
});
player.on('ended',function(){
hourid=player.now_hourid;
if(nv>1){
oldposter=$('.video-js').attr('oldposter');
$('.vjs-poster').css({'background-image':oldposter});
$('#my-video_html5_api').attr({'poster':oldposter});
notice_go();
$('.fullscreen').appendTo('.video-js').show();
$('.vrepeat').appendTo('.video-js').show();
nv=vlogo;
}else{
ajaxvideo(hourid);
$('.vjs-poster').css({'background-image':'none'});
$('#my-video_html5_api').attr({'poster':''});
player.play();
}
});
player.on('play',function(){
if(nv==1){
$('.vjs-control-bar').hide();
}else{
$('.vjs-control-bar').show();
if(player.srecordok){
srecord();
}
}
notice_go();
});
player.on('pause',function(){
clearInterval(srobj);
});
//学习记录
function srecord(){
srobj=setInterval(function(){
cid='46';
hid=player.now_hourid;
run=player.currentTime();
$.post('/Online/srecord',{'cid':cid,'hid':hid,'run':run});
},5000);
}
player.on('timeupdate',function(){
uid="8063";
ctime=player.currentTime();
if(!uid){
if(ctime>=30){
this.pause();
notice_go();
$('.plogin,.fullscreen').show();
return false;
}
}
});
function notice_go(){
$('.buycourse,.readcourse,.plogin,.vrepeat,.flogin,.fullscreen,.srecord').hide();
}
function ajaxvideo(hourid){
clearInterval(srobj);
$.ajax({
type:'post',
url:'/online/getvideo',
data:{'hourid':hourid,'nv':nv,'md5_token':md5_token},
async:false,
dataType:'json',
success:function(free){
if(free.s=='1'){
nv++;
player.src({'src':free.m3,'type':'application/x-mpegURL'});
player.now_hourid=hourid;
player.srecordok=free.srecordok;
$('.vjs-playback-rate-value').html('1x');
$('.vjs-menu-item').removeClass('vjs-selected');
$('.vjs-menu-item').last().addClass('vjs-selected');
$('.chapter_hour_str').html(free.chapter_hour_str);
$('.l-footer').html(free.prev_next);
$('.readcourse').html(free.welcome);
$('.vrepeat').html(free.next_end);
}
ajax_free=free;
}
});
return ajax_free;
}
ajaxvideo(hourid);
$('.srecord .pvrepeat_replay').click(function(){
player.currentTime(srow_run);
player.play();
});
$('.srecord .vrepeat_next').click(function(){
player.currentTime(0);
player.play();
});
// 到达上次记录
if(srow_run){
$('.fullscreen').show();
$('.srecord').show();
}
$('.nofabu').click(function(){
alert('亲,该节视频还未更新,每周都会有更新的,敬请关注');
return false;
});
$('.filedown').click(function(){
id=this.id;
obj=$(this);
uid="8063";
player.pause();
if(uid){
$.ajax({
type:'post',
url:'/filedown',
data:{id:id},
async:false,
success:function(rst){
if(rst!='0'){
obj.attr({'href':rst});
compute();
}else{
notice_go();
$('.fullscreen,.buycourse').show();
}
}
});
}else{
notice_go();
$('.fullscreen,.flogin').show();
}
});
$('.rightvideoli').click(function(){
$('.rightvideoli').find('.mylearnhour1').css({'color':'#F78080'});
$('.rightvideoli').find('.gohour').css({'color':'#000'});
$('.rightvideoli').find('.mybackground').hide();
$(this).find('.mybackground').show();
$(this).find('.mylearnhour1,.gohour').css({'color':'#fff'});
});
$('.rightfileli').mouseenter(function(){
$('.rightfileli').find('.mylearnhour1').css({'color':'#F78080'});
$('.rightfileli').find('.filedown').css({'color':'#000'});
$('.rightfileli').find('.mybackground3').hide();
$(this).find('.mybackground3').show();
$(this).find('.mylearnhour1,.filedown').css({'color':'#fff'});
});
$('.rightfileli').mouseleave(function(){
$(this).find('.mybackground3').hide();
$('.rightfileli').find('.mylearnhour1').css({'color':'#F78080'});
$('.rightfileli').find('.filedown').css({'color':'#000'});
});
$('.nofabu').mouseenter(function(){
$('.nofabu').find('.mylearnhour2').css({'color':'#a8a8a8'});
$('.nofabu').find('.gohour2').css({'color':'#000'});
$('.nofabu').find('.mybackground2').hide();
$(this).find('.mybackground2').show();
$(this).find('.mylearnhour2,.gohour2').css({'color':'#fff'});
});
$('.nofabu').mouseleave(function(){
$(this).find('.mybackground2').hide();
$(this).find('.gohour2').css({'color':'#000'});
$('.nofabu').find('.mylearnhour2').css({'color':'#a8a8a8'});
});
$('body').delegate('.gohour,.return-prev,.return-next','click',function(){
hourid=$(this).attr('hourid');
sort=$(this).attr('sort');
nv=vlogo;
oldposter=$('.video-js').attr('oldposter');
$('.vjs-poster').css({'background-image':'url('+oldposter+')'});
$('#my-video_html5_api').attr({'poster':oldposter});
ajax_res=ajaxvideo(hourid);
menu_item(sort);
notice_go();
if(ajax_res.acl>0){
$('.fullscreen,.readcourse').finish().show();
$('.fullscreen,.readcourse').finish().fadeOut(2000);
}else{
$('.fullscreen,.buycourse').show();
}
});
$('body').delegate('.vp_next,.vrepeat_replay','click',function(){
hourid=$(this).attr('hourid');
sort=$(this).attr('sort');
nv=vlogo;
oldposter=$('.video-js').attr('oldposter');
$('.vjs-poster').css({'background-image':'url('+oldposter+')'});
$('#my-video_html5_api').attr({'poster':oldposter});
ajax_res=ajaxvideo(hourid);
menu_item(sort);
notice_go();
if(ajax_res.acl>0){
$('.fullscreen,.vrepeat').finish().show();
$('.fullscreen,.vrepeat').finish().fadeOut(2000);
}else{
$('.fullscreen,.buycourse').show();
}
});
menu_n="2";
menu_item(menu_n);
function menu_item(menu_n){
$('.rightvideoli').find('.gohour').css({'color':'#000'});
$('.rightvideoli').find('.mylearnhour1').css({'color':'#F78080'});
$('.rightvideoli').find('.mybackground').hide();
$('.rightvideoli').eq(menu_n-1).find('.gohour,.mylearnhour1').css({'color':'#fff'});
$('.rightvideoli').eq(menu_n-1).find('.mybackground').show();
}
某网站的videojs的配置及操作的更多相关文章
- 基于NopCommerce的开发框架——缓存、网站设置、系统日志、用户操作日志
最近忙于学车,抽时间将Nop的一些公用模块添加进来,反应的一些小问题也做了修复.另外有园友指出Nop内存消耗大,作为一个开源电商项目,性能方面不是该团队首要考虑的,开发容易,稳定,代码结构清晰简洁也是 ...
- CentOS 配置防火墙操作实例(启、停、开、闭端口):
CentOS 配置防火墙操作实例(启.停.开.闭端口): 注:防火墙的基本操作命令: 查询防火墙状态: [root@localhost ~]# service iptables status< ...
- Redis快速入门:安装、配置和操作
本文是有关Redis的系列技术文章之一.在之前的文章中介绍了<Redis快速入门:初识Redis>,对Redis有了一个初步的了解.今天继续为大家介绍Redis如何安装.配置和操作. 系列 ...
- 征服 Redis + Jedis + Spring (一)—— 配置&常规操作(GET SET DEL)
有日子没写博客了,真的是忙得要疯掉. 完成项目基础架构搭建工作,解决了核心技术问题,接着需要快速的调研下基于Spring框架下的Redis操作. 相关链接: 征服 Redis 征服 Redis + J ...
- CentOS 配置防火墙操作实例(启、停、开、闭端口)CentOS Linux-FTP/对外开放端口(接口)TomCat相关
链接地址:http://blog.csdn.net/jemlee2002/article/details/7042991 CentOS 配置防火墙操作实例(启.停.开.闭端口): 注:防火墙的基本操作 ...
- Redis:安装、配置、操作和简单代码实例(C语言Client端)
Redis:安装.配置.操作和简单代码实例(C语言Client端) - hj19870806的专栏 - 博客频道 - CSDN.NET Redis:安装.配置.操作和简单代码实例(C语言Client端 ...
- CentOS配置防火墙操作实例
CentOS 配置防火墙操作实例(启.停.开.闭端口): 注:防火墙的基本操作命令: 查询防火墙状态: [root@localhost ~]# service iptables status<回 ...
- SAP Parallel Accounting(平行分类账)业务配置及操作手册
目录 SAP Parallel Accounting(平行分类账业务)配置及操作手册 SAP Parallel Accounting(平行分类账业务)配置及操作手册 Overview 业务说明 为了适 ...
- SAP按销售订单生产和标准结算配置及操作手册
SAP按销售订单生产和标准结算配置及操作手册 http://blog.sina.com.cn/s/blog_6787c0b80101a3tl.html SAP按销售订单生产和标准结算配置及操作手册 S ...
随机推荐
- 用anaconda保证64位和32位的python共存
conda info # 查看当前工作平台 set CONDA_FORCE_32BIT=1 # 切换到32位 set CONDA_FORCE_32BIT=0 # 切换到64位 conda create ...
- js 次方 开方 对数
次方 ,用Math.pow(值,次方数) 如: Math.pow(3,2); 3的平方 Math.Pow(2,3); 2的立方 开方Math.sqrt(值) 如: Math.sqrt(9); ...
- 使用第三方Java类库jaudiotagger完成Flac音频文件metadata(元数据)的读和修改
最近需要使用Java Swing做个读写Flac格式音频文件的小GUI工具,虽然Mp3tag完全可以完成Flac的读写(编辑)任务,但是为了简化工作流程(编辑Flac信息后调用其它系统的接口完成部分信 ...
- OpenCV基于字节指针进行高效像素遍历
直接获取Mat对象的像素块的数据指针,基于字节指针操作,实现快速像素遍历方法(1280x720, 彩色,仅需几毫秒完成).Mat对象的数据组织形式与像素块数据的存储方式,Mat对象由两个部分组成,元数 ...
- linux tar包追加问题
只能已归档的文件才能追加文件. 如果tar.gz文件是如此生成:#tar -zcvf test.tar.gz a.txt即tar.gz是压缩(-z)和归档(-c)文件,则无法给它追加文件:若果tar ...
- Tp5.1 管理后台开发纪要
1. tp5.1 对网页是有缓存机制的 E:\phpStudy\PHPTutorial\WWW\NewAdmin\thinkphp\library\think\Template.php 下displa ...
- 多线程(10) — Future模式
Future模式是多线程开发中常用常见的一种设计模式,它的核心思想是异步调用.在调用一个函数方法时候,如果函数执行很慢,我们就要进行等待,但这时我们可能不着急要结果,因此我们可以让被调者立即返回,让它 ...
- python + pyinstaller 实现将python程序打包成exe文件直接运行
pyinstaller 我们在平常学习使用python的时候经常会自己编写一些小程序来使用,虽然python是跨平台的语言,但是如果我们想要在一个没有python以及很多库环境的电脑上使用我们的小程序 ...
- Django使用指南
一.安装Django 1.命令行安装 pip3 install django(默认安装最新稳定版本) pip3 install django==版本号(指定版本安装) 2.Pycharm安装 在Pyc ...
- Mock常用占位符一览
1.随机字符串(类型 , 位数)@string(lower,10) lower : 小写字母upper : 大写字母number : 数字 2.随机int(下限 , 上限)@integer(60, 1 ...