jquery服务器文件保存到本地,Jquery保存图片到本地

具体方法有两种  一种是 利用canvas的 toDataUrl  和Html5 里面的 标签里面的 Download 属性

虽然 Download 的兼容性不怎么样  但是在文章后面给大家说说怎么兼容IE

如果你用cnavas 画了一张很是完美的照片  你想着把它保存下来

你点了图片 右击 =》图片另存为 (还可以改名字)

以上操作的确是 没毛病对吧 但是 总感觉有点不爽是吧  要的就是一单击就可以下载

HTML 部分:

JS部分:

function Download(){

//cavas 保存图片到本地  js 实现

//------------------------------------------------------------------------

//1.确定图片的类型  获取到的图片格式 data:image/Png;base64,......

var type ='png';//你想要什么图片格式 就选什么吧

var d=document.getElementById("cavasimg");

var imgdata=d.toDataURL(type);

//2.0 将mime-type改为image/octet-stream,强制让浏览器下载

var fixtype=function(type){

type=type.toLocaleLowerCase().replace(/jpg/i,'jpeg');

var r=type.match(/png|jpeg|bmp|gif/)[0];

return 'image/'+r;

};

imgdata=imgdata.replace(fixtype(type),'image/octet-stream');

//3.0 将图片保存到本地

var savaFile=function(data,filename)

{

var save_link=document.createElementNS('http://www.w3.org/1999/xhtml', 'a');

save_link.href=data;

save_link.download=filename;

var event=document.createEvent('MouseEvents');

event.initMouseEvent('click',true,false,window,0,0,0,0,0,false,false,false,false,0,null);

save_link.dispatchEvent(event);

};

var filename=''+new Date().getSeconds()+'.'+type;

//我想用当前秒是可以解决重名的问题了 不行你就换成毫秒

savaFile(imgdata,filename);

};

===================================================

接下来就要用 标签了

0dd7912397dda144b4b30b41b3b7d0a20df4868e.jpg

这就不用写js方法咯 但是会有不兼容的问题  当前好像只支持chrome  和 firefox对于IE 该怎么办呢?

那就需要 在你页面的部分引入这个js文件了

务必请放在 head里面 因为要让浏览器在解析头部后再去解析那时候就能让IE 支持该属性了。