DOM 更改
<input type=”file”>
HTML5 为使用 <input type="file" />
元素的文件对话框提供了有限的支持,例如 multiple
、accept
和 webkitdirectory
。NW.js 扩展了文件输入以更好地支持原生应用程序。
注意
出于安全原因,NW.js 扩展功能仅在 Node 框架中启用。有关 Node 和普通框架之间差异的详细信息,请参阅 NW.js 中的安全性。
fileinput.value
该属性包含本地文件的原生路径。
例如,您可以使用 Node.js API 读取用户选择的文件。
// Get the native path of the file selected by user var fileinput = document.querySelector('input[type=file]'); var path = fileinput.value; // Read file with Node.js API var fs = nw.require('fs'); fs.readFile(path, 'utf8', function(err, txt) { if (err) { console.error(err); return; } console.log(txt); });
fileitem.path
HTML5 提供了一个 files
属性来返回在 <input>
标签中选择的所有文件。NW.js 为 files
中的每个文件项提供了一个额外的属性 fileitem.path
,它表示所选文件的原生路径。
var fileinput = document.querySelector('input[type=file]'); var files = fileinput.files; for (var i = 0; i < files.length; ++i) { console.log(files[i].path); }
属性:nwdirectory
nwdirectory
与 webkitdirectory
类似,但它返回目录的路径,而不是返回其中的文件。
例如
<input type="file" nwdirectory>
属性:nwdirectorydesc
设置 nwdirectory
文件对话框中标题的描述。默认值为 Select Folder
。
属性:nwsaveas
nwsaveas
将打开一个“另存为”对话框,允许用户输入文件的路径。可以选择不存在的文件,这与默认的文件输入标签不同。
例如
<input type="file" nwsaveas>
您可以指定要保存的默认文件名。
<input type="file" nwsaveas="filename.txt">
属性:nwworkingdir
使用 nwworkingdir
,当元素被激活时,文件对话框将从给定的目录开始。
例如,以下代码使文件对话框默认在 /home/path/
中打开
<input type="file" nwworkingdir="/home/path/">
oncancel
事件
当用户取消文件对话框时,会触发此事件。
<iframe>
NW.js 扩展了 <iframe>
标签,以便更轻松地开发原生应用程序。这些功能使应用程序能够绕过沙箱和同源策略等的限制。
另请参阅 webview 标签,了解新的 <webview>
标签。
属性:nwdisable
将框架和子框架设置为普通框架。
注意
此属性不会阻止普通框架中的页面访问其父框架和顶级框架。然后它们仍然可以访问 Node.js API。因此,通常您可能希望将此属性与 nwfaketop
一起使用。
属性:nwfaketop
阻止框架中的网页访问真实的 window.parent
或 window.top
。它们将获得伪造的父级和顶级,即框架自身的 window
对象。子框架也会受到影响。
此属性通常与 nwdisable
一起使用。
属性:nwUserAgent
在框架和子框架中加载网页时,覆盖默认的用户代理。有关详细信息,请参阅 清单中的 user-agent
。
webview 标签
在 webview 标签 中添加了一些方法。