日期:2014-05-16  浏览次数:20327 次

javascript下载文件问题
我想要做一个下载xml文件的功能,在chrome下是可以正确下载的,但是在Firefox下却没有任何反应,也不报错,请问这是什么原因呢?怎么实现两个浏览器都兼容的下载功能呢?另外我的下载方式需求比较特殊,它不是以url的形式,而是给一个文件名,跟xml的文件内容,要求下载到本地。实际上 我的下载功能相当于:服务器传给前台一个fileName,和一个xml的内容,要求前台在本地创建一个以fileName命名的xml文件,当然,内容是后台给的。先谢过!代码如下:
var elem = document.createElement("a");
elem.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(xml));   //xml就是后台传过来的xml文件内容
elem.setAttribute('download', fileName);
elem.click();

------解决方案--------------------
你可以在click之前先把elem使用document.body.appendChild函数添加到页面后再触发click试试。