嵌入视频,计算观看时长

通过获取腾讯视频的vid

在页面内通过iframe嵌入视频

<iframe id="my-videos" frameborder="0" width="960px" height="400px" src="https://v.qq.com/txp/iframe/player.html?vid=q00273zq6vy" allowFullScreen="true"></iframe>

想获取观看时长,但是这种嵌入的视频,获取不到腾讯视频的播放时长

因为跨域了

查了各种方法发现腾讯没有提供接口的话就无法获取

只能通过用户进入网页的时间和离开网页的时间之差来获取

$(document).ready(function() {
  let startTime = new Date(),
    duration = 0;
  document.addEventListener(
    "visibilitychange",
    function() {
      if (document.visibilityState == "hidden") {
        let endTime = new Date();
        duration = endTime.getTime() - startTime.getTime();
      } else {
        startTime = new Date();
      }
    },
    false
  );
  $(window).bind("beforeunload", function() {
    let endTime = new Date();
    t = endTime.getTime() - startTime.getTime() + duration;
    let hour = Math.floor((t / 1000 / 60 / 60) % 24);
    let min = Math.floor((t / 1000 / 60) % 60);
    let sec = Math.floor((t / 1000) % 60);
    studytime = hour + "小时" + min + "分钟" + sec + "秒";
    let studydate = format(startTime, "yyyy-MM-dd HH:mm:ss");
    console.log(studytime, studydate);
    return "您输入的内容尚未保存,确定离开此页面吗?";
  });
});

源代码:https://github.com/ouxiaojie18/-/tree/master/%E5%B5%8C%E5%85%A5%E8%85%BE%E8%AE%AF%E8%A7%86%E9%A2%91

原文地址:https://www.cnblogs.com/mosquito18/p/9721342.html

时间: 2024-11-07 18:20:11

嵌入视频,计算观看时长的相关文章

js 计算请假时长(去除了周六日,节假日未清除)

js 计算请假时长(去除了周六日,节假日未清除) 2017-12-26 亦皓 <!DOCTYPE html> <html> <head> <title></title> <meta http-equiv="content-type" content="text/html;charset=utf-8"> <link href="./bootstrap/css/bootstrap.m

选择本地视频时获取视频分辨率和时长

< video style = "display:none;" controls = "controls" id = "aa" > </video> <input type = "file" onchange = "changeFile(this)" > <script> function myFunction(ele) { //视频时长  单位秒 alert

注意:QQ影音视频转码时长丢失

客户宣传片发来,高清的,比较庞大,要放在客户自己的网站上,于是用QQ影音转码压缩下,变成低质量的.如下 一切都很顺利,提示进度100%! 这一切都是电脑自动的,又是提示成功的,千想万想没想到,竟然还能这地方出错.转码成功后,播放了下,很正常,于是传到网络,告知客户,准备收钱. 客户微信说:"都差了十几秒,看不到最后的". 晕,真没想到QQ影音转个码还能给最后视频丢片段!!!也让客户觉得是不是太大意了?麻蛋,电脑自动的,怎么也想不到这地方有问题.检查了下,果然,原长度6分14秒的视频变成

java中最简单的计算执行时长的方式

日常在做一些性能测试的时候会通过执行时间来判断执行时长,java中最简单的方式如下: //开始时间 long startL= new Date().getTime(); //这里需要导入 java.util.*;包 exceFun(); long endL= new Date().getTime(); //执行时间 System.out.println("startL:"+senStrat +" endL:"+senEndL +" 执行时长:"

【d3.js实践教程特别篇】PornHub发布基于d3的网民观看成人视频时长分布交互式地图

学习d3.js(以下都简称d3)也有一段时间了,运行d3做了几个项目.我发现中文的d3教程很少,国外资料多但要求有一定的英文阅读能力(推荐网址:http://bl.ocks.org/mbostock),于是就萌发了写一个d3实际运用系列文章的想法,现在开始付之行动.在系列中,我会用d3+html5 canvas实现一些实际效果(如统计结果展示,地图数据展示等),希望可以跟大家共同学习交流. 代码我公布在git.cschina.com上,大家可以clone到本地运行,地址是:http://git.

h5嵌入视频遇到的bug及总结

最近做的一个h5活动因为嵌入视频而发现了好多以前从未发现的问题,在测试的时候不同系统不同版本不同环境等多多少少都出现了些问题,搞得我也是焦头烂额的,不过好在最终问题都解决了,自己也学到了好多东西,为了方便以后用到参考,所以就记下来咯.现在有一个感悟就是当问题来临的时候不要觉得沮丧不要抱怨而要积极面对,有问题就说明自己做的不够好,而问题解决之后自己又能积累一些,又能学到一些新东西,这样不是挺好的吗.哈哈,下面我就简单记下这次h5项目中的问题. 1,webkit-playsinline playsi

统计指定目录下的视频时长

有时间可以写成递归的 1 package org.zln.video.demo1; 2 3 import it.sauronsoftware.jave.Encoder; 4 import it.sauronsoftware.jave.EncoderException; 5 import it.sauronsoftware.jave.InputFormatException; 6 import it.sauronsoftware.jave.MultimediaInfo; 7 8 import ja

Java获取视频的大小、时长

前端上传视频之后,根据上传的视频文件获取视频的大小和时长 1.获取视频时长 private String ReadVideoTime(File source) { Encoder encoder = new Encoder(); String length = ""; try { MultimediaInfo m = encoder.getInfo(source); long ls = m.getDuration()/1000; int hour = (int) (ls/3600);

计算部落冲突时长的工具

今天闲来无事,想找一个计算部落冲突建筑升级时间.发现没有得心应手的,就自己写了一个控制台输出的小程序. import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class T5 { public static void main(String[] args) { //获取当前系统毫秒 Date nowDate=new Date(System.currentTimeMill