页面上有一段代码,要保存下来,怎么做?
选择复制?用按钮请求数据库?都很低效。
既然页面已经有了内容,为何不用JS获取这段代码,生成文件后直接下载?
下面我们用Blob和URL.createObjectURL来实现这一功能,兼容Chrome、Firefox和IE等主流浏览器。
点击查看演示地址。
JS代码如下,已经封装成一个函数,filename是保存的文件名,content是保存到这个文件中的内容:
function download(filename, content) {
var blob = new Blob([content], {type: 'text/plain'});
var url = window.URL.createObjectURL(blob);
var a = document.createElement('a');
a.style = "display: none";
a.href = url;
a.download = filename;
document.body.appendChild(a);
a.click();
setTimeout(function () {
document.body.removeChild(a);
window.URL.revokeObjectURL(url);
}, 5);
}
这部分点实现步骤是:
然后,我们可以添加一个按钮,点击事件下载文件:
按钮:
<button type="button" id="down">Download</button>
点击事件:
document.getElementById('down').onclick = function () {
var filename = "justdown.txt";
var content = "Hello, you download a text file by Javasctipt.";
download(filename, content);
};
相关文章;Javascript读取文件内容到文本框。
参考资料: