html代码

   <video id="myVideo"  class="video-active" width="100%" height="300" controls="controls" >
<source src="__STATIC__/video/videos/1.课程介绍.mp4" type="video/mp4" style="margin-top: 0px;;">
<source src="__STATIC__/video/videos/1.课程介绍.mp4" type="video/ogg">
</video>

1、使用jquery写的代码段:

<script>
$(document).ready(function() { $times = 10;
new_times = 0;
$("#video-active").on(
"timeupdate",
function(event) {
onTrackedVideoFrame(this.currentTime, this.duration);
}
); })
/**
*
* @param {Object} currentTime 视频播放的时间
* @param {Object} duration 视频的总播放时间
*/
function onTrackedVideoFrame(currentTime, duration) {
if(currentTime > $times) {
new_times = currentTime;
Media = document.getElementById('video-active');
Media.pause();
layer.confirm('你未购买本视频', {
btn: ['马上购习', '稍后购买'] //按钮
}, function() {
layer.msg('正在开发中,请等待', {
icon: 1
});
}, function() {
layer.closeAll();
return false;
}); }
}
</script>

2、使用javascript原生态代码(第一种):

<script type="text/javascript">

    // 获取 id="myVideo" 的 video 元素
vid = document.getElementById("myVideo");
// // 为 video 元素添加 ontimeupdate 事件,如果当前播放位置改变则执行函数
vid.ontimeupdate = function(){
var curTime = vid.currentTime;
console.log(curTime);
if (curTime >= 20) {
vid.pause();
alert("请购买本视频后再观看!");
return false;
}
};

3、使用javascript原生态代码(第二种):

   vid = document.getElementById("myVideo");
//// videoPlayer.addEventListener("timeupdate", function () { getCurrentVideoPosition(); }, false);
vid.addEventListener("timeupdate",function(){
var curTime = vid.currentTime;
if (curTime >= 20) {
vid.pause();
alert("请购买本视频后再观看");
return false;
}
})

特别说明:

1、使用javascript共有两种的方法;主要区是有些浏览器不能直接使用timeupdate,只能使用addEvetListener

2、公众号开发视频时,js控制的视频要放在<video><video>下面; 要不然不能执行timeupdate;

js获取播放器播放时间和停止播放的更多相关文章

  1. 使用Vitamio打造自己的Android万能播放器(5)——在线播放(播放优酷视频)

    前言 为了保证每周一篇的进度,又由于Vitamio新版本没有发布, 决定推迟本地播放的一些功能(截图.视频时间.尺寸等),跳过直接写在线播放部分的章节.从Vitamio的介绍可以看得出,其支持http ...

  2. 使用Vitamio打造自己的Android万能播放器(7)——在线播放(下载视频)

    前言 本章将实现非常实用的功能——下载在线视频.涉及到多线程.线程更新UI等技术,还需思考产品的设计,如何将新加的功能更好的融入到现有的产品中,并不是简单的加一个界面就行了,欢迎大家交流产品设计和技术 ...

  3. JavaScript多个音频audio标签,点击其中一个播放时,其他的停止播放

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. 使用Vitamio打造自己的Android万能播放器(6)——在线播放(播放列表)

    前言 新版本的VPlayer由设计转入开发阶段,预计开发周期为一个月,这也意味着新版本的Vitamio将随之发布,开发者们可以和本系列文章一样,先开发其他功能.本章内容为"在线视频播放列表& ...

  5. 使用Vitamio打造自己的Android万能播放器(4)——本地播放(快捷搜索、数据存储)

    前言 关键字:Vitamio.VPlayer.Android播放器.Android影音.Android开源播放器 本章节把Android万能播放器本地播放的主要功能(缓存播放列表和A-Z快速查询功能) ...

  6. js获取当地时间并且拼接时间格式的三种方式

    js获取当地时间并且拼接时间格式,在stackoverflow上有人在问,查了资料,各种方法将时间格式改成任意自己想要的样式. 1. var date = new Date(+new Date()+8 ...

  7. js 获取开始时间和结束时间相隔小时及分钟(时间戳操作)

    js 获取开始时间和结束时间相隔小时及分钟(时间戳操作) 场景描述:获取开始时间和结束时间相隔小时及分钟 实例: TimeOnConfirm(curDate) { if(this.pickernum ...

  8. .net C# 网页播放器 支持多种格式 媒体播放器 播放器 代码

    .avi格式代码片断如下:<object id='video' width='400' height='200' border='0' classid='clsid:CFCDAA03-8BE4- ...

  9. cuplayer酷播播放器 swf 带参数直接播放

    客户需要使用cuplayer,直接调用swf 播放器. /Player/player.swf?FlvID=745,此处写入视频ID; 官方给的例子,运行是有问题的. http://www.cuplay ...

  10. 使用Vitamio打造自己的Android万能播放器(3)——本地播放(主界面、播放列表)

    前言 打造一款完整可用的Android播放器有许多功能和细节需要完成,也涉及到各种丰富的知识和内容,本章将结合Fragment.ViewPager来搭建播放器的主界面,并实现本地播放基本功能.系列文章 ...

随机推荐

  1. ViewPager+fragment的使用

    如图我在一个继承FragmentActivity的类中嵌套了3个fragment分别能实现3个不同的界面,默认展现第一个,在第一个的fragment中有个ViewPager在ViewPager中嵌套了 ...

  2. Jmeter各部件的作用

    JMeter主要组件介绍 1.测试计划(Test Plan)是使用 JMeter 进行测试的起点,它是其它 JMeter 测试元件的容器. 2.线程组(Thread Group)代表一定数量的并发用户 ...

  3. Android应用开发基础之五:网络编程(二)

    HttpClient 发送get请求 创建一个客户端对象 HttpClient client = new DefaultHttpClient(); 创建一个get请求对象 HttpGet hg = n ...

  4. Consul 配置ACLs

    比如consul.exe 在D:\consul来个json配置文件在 D:\consul\config.jsonjson 格式{ "acl_datacenter": "d ...

  5. day014-反射、注解

    1. Junit 1.1什么是Junit Junit是Java语言编写的第三方单元测试框架(工具). 1.2单元测试 在Java中,一个类就是一个单元. 单元测试:开发中编写的一小段代码,用来检测类中 ...

  6. Laravel Service Provider 开发时设置延迟加载时遇到的问题

    因实际项目需求,近日在开发 laravel-database-logger 包的时候,发现设置 ServiceProvider defer 属性设置为 true 时,会导致在register 方法中注 ...

  7. How to reference two table when lack reference column.

    Question:How to reference two table when lack reference column. Example: 1.Create two tables the one ...

  8. Struts2学习-横切关注点

    1.建空项目 2.建包 3.建类 4.编写 package com.nf.action; import com.opensymphony.xwork2.ActionInvocation; import ...

  9. 小故事学设计模式之Observer : (三) 老婆帮忙订机票

    (IT的事就是过场多,过场多了就容易忘,所以我们不妨看一个记一个,这也是一个办法,顺便还能跟同行们交流一下)  要和老婆一起回老家了, 成都离我们安徽太远, 两个人飞一下过去就要花掉近三千块, 于是我 ...

  10. (转)Wireshark基本介绍和学习TCP三次握手

    原地址https://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html#filter 阅读目录 wireshark介绍 wireshar ...