var download=function(urlInfo)
{
when(createFile(localFileName))
.then(function (fileInfo)
{
var downloaded = function (downloadInfo)
{
vueThis.cacheStatus = "downloaded";
vueThis.downloadProgress = 100;
weui.toast("Cache is done");
fileInfo.fileWriter.onwriteend = function ()
{
var mainPlayer = document.getElementById("mainPlayer");
var prevTime = mainPlayer.currentTime;
mainPlayer.src = fileInfo.fileEntry.toURL();
mainPlayer.currentTime = prevTime;
mainPlayer.play();
vueThis.cacheStatus = "playOffline";
vueThis.downloadProgress = 100;
weui.toast("Offline playing");
};
fileInfo.fileWriter.write(downloadInfo.blob);
}; vueThis.cacheStatus = "downloading";
vueThis.cacheMessage = 'Total ' + (urlInfo.size / (1024 * 2014)).toFixed(2) + 'MB';
var downloader = Downloader(vueThis.mediaUrl, urlInfo.mimeType, downloadOnProgress);
when(downloader).then(downloaded).otherwise(function (e) { console.log(e) });
});
};

  

function Downloader(url, mimeType, onProgressCallback)
{
var deferred = when.defer();
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
//if url is from other domains,
//Cors settings of that domain is required
//the settings is as following
//Access-Control-Allow-Origin *.youzack.com;
//Access - Control - Allow - Methods GET;
//Access - Control - Expose - Headers Content - Type, Content - Length;
xhr.onreadystatechange = function() {
if (this.readyState == 4) {
if (this.response != null) {
var size = parseInt(this.response.byteLength);
var blob = new Blob([new Uint8Array(this.response)], {type: mimeType});
var ret = {'size' : size,'blob' : blob};
deferred.resolve(ret);
}
}
};
xhr.onprogress = function(e) {
if(onProgressCallback)
{
onProgressCallback(e);
}
};
xhr.responseType = 'arraybuffer';
xhr.send();
return deferred.promise;
};

在谷歌中缓存下载视频离线观看,js代码的更多相关文章

  1. html5 video标签屏蔽右键视频另存为的js代码-HTML5教程

    点评:html5 video标签本身有下载功能但是在video区域内,点击右键可以将“视频另存为”下面是屏蔽右键视频另存为的js代码,有此需求的朋友不要错过   做HTML5的video标签,本身我们 ...

  2. 如何在 js 代码中使用 jsp 标签或 Java 代码

    JSP 标签还是很方便的,比如 Struts.Spring 等提供给我们的 JSP 标签,可以用它们来获取变量或进行一些计算.比如 struts2 的 <s:url value="/a ...

  3. 喜迎Win10周年版,芒果TV UWP完善手机视频离线下载

    喜迎Win10周年版更新,湖南卫视旗下唯一官方视频平台<芒果TV>近日向Win10商店提交了芒果TV UWP V3.1.0版,这次不仅在上一版(V3.0.0)的基础上完善了用户呼声最高的手 ...

  4. 不安装谷歌市场,下载谷歌市场中的APK

    不安装谷歌市场,下载谷歌市场中的APK GooglePlayStore 是谷歌官方的的应用市场,有的时候还是需要从谷歌市场下载APK文件.国内的安卓手机厂商都不自带GooglePlay,甚至一些手机& ...

  5. IDM下载器使用方法详解:百度网盘下载,视频会员一网打尽!

    一. IDM的设置 [01]IDM插件与各大浏览器的集成 默认情况下,在成功安装IDM后,直接点击这里的选项,会弹出[常规设置],一般情况下直接保持默认的配置即可,如果你使用的是比较小众的浏览器,你可 ...

  6. 本地缓存下载文件,download的二次封装

    来源:http://ask.dcloud.net.cn/article/524 源码下载链接 说明: (1)由于平时项目中大量用到了附件下载等功能,所以就花了一个时间,把plus的downlaod进行 ...

  7. 从谷歌官网下载android 6.0源码、编译并刷入nexus 6p手机

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/fuchaosz/article/details/52473660 1 前言 经过一周的奋战,终于从谷 ...

  8. bilibili动画下载视频批量改名(python)

    bilib应用 在微软商店中下载哔哩哔哩动画,虽然软件UI古老,但是贵在稳定和支持下载 安装以后搜索自己想要的视频,然后缓存下载 下载后进入下载的路径 视频文件重命名 打开自动命令的程序或者py脚本, ...

  9. 使用you-get下载视频网站视频或其他

    使用you-get下载视频网站视频或其他 文/玄魂 目录 使用you-get下载视频网站视频或其他 前言 1.1 下载.安装 依赖 exe安装 pip安装 Antigen安装 Git 克隆源码 Hom ...

随机推荐

  1. sklearn线性回归实现房价预测模型

    目录 题目要求 单特征线性回归 方案一 方案二 多特征线性回归 两份数据 ex1data1.txt ex1data2.txt 题目要求 建立房价预测模型:利用ex1data1.txt(单特征)和ex1 ...

  2. Java基础-异常处理机制 及异常处理的五个关键字:try/catch/finally/throw /throws

    笔记: /** 异常处理机制: 抓抛模型 * 1."抛", 一旦抛出,程序终止! printStackTrace()显示异常路径! * 2."抓", 抓住异常 ...

  3. vue param和query两种传参方式

    1.传参方式 query传参方式 this.$router.push({ path: "/home", query: {code:"123"} }) param ...

  4. javascript逻辑或(||)

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

  5. [Luogu] 被污染的河流

    https://www.luogu.org/problemnew/show/P3875 线段树扫描线求矩形面积并 扫描线的线段树有点奇怪,修改的标记不会下传,标记的意义是当前区间被完整地覆盖了多少次, ...

  6. Noip2014 提高组 Day1 T1 生活大爆炸版石头剪刀布 + Day2 T1 无线网络发射器选址

    Day1 T1 题目描述 石头剪刀布是常见的猜拳游戏:石头胜剪刀,剪刀胜布,布胜石头.如果两个人出拳一样,则不分胜负.在<生活大爆炸>第二季第8 集中出现了一种石头剪刀布的升级版游戏. 升 ...

  7. xgzc— math 专题训练(一)

    Lucas定理 当\(p\)是质数时,有\((^n_m)\equiv(^{n/p}_{m/p}) * (^{n\%p}_{m\%p}) \pmod{p}\) 狄利克雷卷积 定义:\((f*g)(n)= ...

  8. python3实现互信息和左右熵的新词发现--基于字典树

    字典树 原来讲明白了剩下的就是具体实现了,最适合存储和计算词频的数据结构就是字典树,这里给一个讲解的很清楚的链接 具体代码 代码已开源,需要的点击这个Github

  9. Atcoder ABC 139C

    Atcoder ABC 139C 题意: 有 $ n $ 个正方形,选择一个起始位置,使得从这个位置向右的小于等于这个正方形的高度的数量最多. 解法: 简单递推. CODE: #include< ...

  10. VS2010,VS2013 Datagridview控件的编辑列功能,弹窗界面被挤扁了

    搜了很久,没找到解决办法,在一个角落看到说要卸载Framework,实践后可以,发出来记一下. 解决办法: 发现自己电脑上多了Framework4.8,可能安装VS2013的时候自动安装的. 卸载了F ...