
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>Droid</title>
<style type="text/css">
ul li {
float: left;
list-style: none;
padding-right: 10px;
}
</style>
<script type="text/javascript" src="jquery-180minjs"></script>
<script type="text/javascript">
$ (function ()
{
var oUll = $ ("#ul"), FR, source = $ (':file');
if (!!(FR = $ (window)prop ('FileReader')))
{
var fr = new FR ();
$ ("#btn")click (function ()
{
var file = sourceprop ('files')[0];
if (!file)
{
return false;
}
var aLi = $ ("<li></li>");
var aImg = $ ("<img />");
oUllappend (aLi);
aLiappend (aImg);
var imgs = $ ("img");
fronloadend = function (e)
{
imgseq (imgslength - 1)attr ('src', etargetresult);
sourceval ('');
};
frreadAsDataURL (file);
});
}
});
</script>
</head>
<body>
<input type="file" name="file" />
<input id="btn" type="button" value="添加" />
<ul id="ul"></ul>
</body>
</html>
(1)HTML页面视频标签大体如下
<video id="video"controls="controls">
<source src="/video/2mp4" type="video/mp4" />
</video>
(2)视频加载后获取视频的长度
varelevideo = documentgetElementById("video");
elevideoaddEventListener('loadedmetadata', function () {//加载数据
//视频的总长度 consolelog(elevideoduration);
});
(3)视频开始播放
varelevideo = documentgetElementById("video");
elevideoaddEventListener('play', function () {//播放开始执行的函数
consolelog("开始播放");
});
(4) 视频正在播放中
varelevideo = documentgetElementById("video");
elevideoaddEventListener('playing', function () {//播放中consolelog("播放中");
});
(5)视频加载中
varelevideo = documentgetElementById("video");
elevideoaddEventListener('waiting', function () {//加载
consolelog("加载中");
});
(6)视频暂停播放
varelevideo = documentgetElementById("video");
elevideoaddEventListener('pause', function () {//暂停开始执行的函数
consolelog("暂停播放");
});
(7)视频结束播放
varelevideo = documentgetElementById("video");
elevideoaddEventListener('ended', function () {//结束
consolelog("播放结束");
}, false);
js实现获取文件大小:
var maxsize = 210241024;//定义最大为2M。
var errMsg = "上传的附件文件不能超过2M!";
var tipMsg = "您的浏览器暂不支持计算上传文件的大小,确保上传文件不要超过2M,建议使用IE、FireFox、Chrome浏览器。";
var browserCfg = {};
var ua = windownavigatoruserAgent;
if (uaindexOf("MSIE")>=1){
browserCfgie = true;
}else if(uaindexOf("Firefox")>=1){
browserCfgfirefox = true;
}else if(uaindexOf("Chrome")>=1){
browserCfgchrome = true;
}
function checkfile(){
try{
var obj_file = documentgetElementById("fileuploade");
if(obj_filevalue==""){
alert("请先选择上传文件");
return;
}
var filesize = 0;
if(browserCfgfirefox || browserCfgchrome ){
filesize = obj_filefiles[0]size;
}else if(browserCfgie){
var obj_img = documentgetElementById('tempimg');
obj_imgdynsrc=obj_filevalue;
filesize = obj_imgfileSize;
}else{
alert(tipMsg);
return;
}
if(filesize==-1){
alert(tipMsg);
return;
}else if(filesize>maxsize){
alert(errMsg);
return;
}else{
alert("文件大小符合要求");
return;
}
}catch(e){
alert(e);
}
}
js实现获取绝对路径:
function readFile(fileBrowser) {
if (navigatoruserAgentindexOf("MSIE") != -1) {
return getFilePath(fileBrowser);
} else if (navigatoruserAgentindexOf("Firefox") != -1 || navigatoruserAgentindexOf("Mozilla") != -1) {
return getFilePathWithFF(fileBrowser);
} else {
return;
}
}
function getFilePath(fileBrowser) {
alert("ie");
alert(fileBrowservalue);
}
function getFilePathWithFF(fileBrowser) {
try {
netscapesecurityPrivilegeManagerenablePrivilege("UniversalXPConnect");
} catch(e) {
alert('由于浏览器安全问题 请按照以下设置 [1] 地址栏输入 "about:config" ; [2] 右键 新建 -> 布尔值 ; [3] 输入 "signedappletscodebase_principal_support" (忽略引号)');
return;
}
var fileName = fileBrowservalue;
alert("firefox");
alert( fileName);
}
以上就是关于js 关于file文件流的问题,已经困惑已久全部的内容,包括:js 关于file文件流的问题,已经困惑已久、JS判断视频Video的播放、暂停、结束完成及获取长度事件监听处理、IE8以上,用js获取上传文件大小和绝对路径的实现代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)