我正在尝试使用JavaScript创建文本文件,我知道可以通过使用ActiveX对象来实现,但是它只能在IE浏览器上很好地运行。
我的要求是使用Safari浏览器的JavaScript生成文本文件?
有人可以在这方面帮助我吗?
另一种方法是使用Blob
和Blob
。所有最新的浏览器(包括Safari 6+)都支持它们。
URL.createObjectURL
这里是URL.createObjectURL
,使用此技术从var textFile = null,
makeTextFile = function (text) {
var data = new Blob([text], {type: 'text/plain'});
// If we are replacing a previously generated file we need to
// manually revoke the object URL to avoid memory leaks.
if (textFile !== null) {
window.URL.revokeObjectURL(textFile);
}
textFile = window.URL.createObjectURL(data);
// returns a URL you can use as a href
return textFile;
};
保存任意文本。
关于示例的另一点注意事项是,我在下载链接上使用了example。不幸的是,Safari当前不支持它。但是,在具有此功能的浏览器中,单击该文件将自动下载文件,而不是在浏览器中打开文件。另外,由于我将textarea
属性设置为download
attribute,因此文件将使用该名称下载,而不是download
生成的随机名称。
在JavaScript中,您可以使用以下行来要求用户保存文本文件:
download
我曾在一些流行的浏览器中对其进行过测试,以确保它可以在Safari中正常工作。
但我的要求是使用javascript生成一个文本文件Safari浏览器
由于安全限制,香草JavaScript无法实现。但是,您可以使用服务器端JavaScript,例如Node.JS或Ajax或其他一些服务器端技术。