Iframe和a标签的downLoad新属性实现-调用浏览器的本地下载功能
来源:互联网 发布:环球黑卡 知乎 编辑:程序博客网 时间:2024/06/04 19:33
//js中的html结构
<a class="downLoadA" style="display: inline-block;float:left;width: 40px;height: 40px;"><img id="downLoadImg" style="width:40px;height:40px;border:none;" type="button" class="downLoadImg_btn" src="/ngcs/src/js/communication/huawei/media/clientArea/downLoadImg.png"/></a</div>
//js如下完整代码;
//点击调用浏览器的本地下载功能
var downLoadImg = function() {//获取图片的路径
var imgPathSrc = $('#headImg',this.$el).attr("src");
if(imgPathSrc.indexOf("_min") != "-1") {
var temp = imgPath.indexOf("_min").split("_min");
var part1 = temp[0];
var part2 = temp[1];
imgPathSrc = part1 + part2;
}
function myBrowser() {
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isOpera = userAgent.indexOf("Opera") > -1;
//判断是否IE浏览器
if(userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1) {
return "IE";
};
//判断是否IE浏览器
if(userAgent.indexOf("Trident") > -1) {
return "Edge";
}
}
//调用当前时间作为图片的名字
function getNowFormatDate() {
var date = new Date();
var month = date.getMonth() + 1;
var strDate = date.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
var currentdate = date.getFullYear() + month + strDate + date.getHours()+ date.getMinutes()+ date.getSeconds()+randNum(0, 9)+randNum(0, 9)+randNum(0, 9)+randNum(0, 9);
return currentdate;
}
function randNum(x, y) {
return Math.floor(Math.random()*(y - x + 1) + x);
}
//弹框的点击事件调用本地下载功能
function DownLoadReportIMG(imgPathURL) {//如果隐藏IFRAME不存在,则添加
if (!document.getElementById("IframeReportImg")){
iframeIEDown = $('<iframe style="display:none;" id="IframeReportImg" src='+imgPathURL+' name="IframeReportImg" width="0" height="0" src="about:blank"></iframe>');
iframeIEDown.appendTo("body");
}
if(navigator.userAgent.toLowerCase().indexOf('se 2.x')>-1&&navigator.userAgent.toLowerCase().indexOf('trident')){
setTimeout(function(){
document.frames["IframeReportImg"].document.execCommand("SaveAs");
$('#IframeReportImg').remove();
},90);
}else{
setTimeout(function(){
document.frames["IframeReportImg"].document.execCommand("SaveAs");
$('#IframeReportImg').remove();
},30);
}
}
if(myBrowser() === "IE" || myBrowser() === "Edge") {
DownLoadReportIMG(imgPathSrc)
} else {
//!IE
$('.downLoadA').attr('href', imgPathSrc);
if(navigator.userAgent.indexOf("Firefox") > -1){
$('.downLoadA').attr('download', getNowFormatDate()+imgPathSrc.substr(-4));
}else{
$('.downLoadA').attr('download', getNowFormatDate());
}
}
}
1 0
- Iframe和a标签的downLoad新属性实现-调用浏览器的本地下载功能
- HTML5 a标签的download属性
- HTML5 a标签的download属性
- HTML5 a标签的download属性
- a标签download属性
- iframe的name属性用法(配合a标签的target属性实现页面局部刷新)
- Download功能的实现
- HTML5 <a>标签download 属性
- <iframe> 标签的 sandbox 属性
- a标签的target指向iframe实现页面局部刷新
- a 链接的 download 属性实操
- META标签的用途、功能和属性
- 基于AxWebBrowser实现完美的标签式浏览器,下载地址:http://download.csdn.net/source/337096
- a标签的三种功能及其属性的运用
- html的<iframe>标签 的frameborder属性
- <a>标签的href和onclick属性
- <a>标签的href和onclick属性
- <a>标签的href和onclick属性
- js的&&与||运算符
- uva 821 Page Hopping 最短路floyd
- H5基础第五课时CSS篇(1)
- PHP htmlspecialchars() 的反函数 html_entity_decode()
- Algorithm-Gossip 经典算法系列 说明文档
- Iframe和a标签的downLoad新属性实现-调用浏览器的本地下载功能
- H5基础第五课时CSS篇(2)
- 抽象工厂模式
- Android Studio混淆打包
- extern和static的区别
- 使用南尘的ImagePicker实现仿微信的相册图片选择以及拍照上传
- 关于ctrl+c 和 ctrl+z的区别
- matplotlib学习记录(一)
- 自己用过的linux命令(二)