Chrome:JavaScript window.open可以保存

lun*_*man 8 javascript google-chrome

想象一下用HTML和JavaScript编写的FTP客户端.这部分有效.但如果用户可以"将列表"复制到剪贴板中,那就太好了.事实证明,剪贴板的东西在JS中并不那么容易(此外,列表可能很大).因此,最好是使用生成的列表弹出一个窗口,然后用户可以选择Copy'Paste,或将页面保存到磁盘.

目前我这样做:

    my_window = window.open("", "Copy List");
    my_window.document.write('<pre>\n'+string+'</pre>');
    my_window.document.close();

哪个有效.我得到一个新选项卡,我在"字符串"中生成的列表很好地显示.

但Chrome会禁用/删除"保存页面"选项.如果用户可以保存页面(html或txt),那将是很好的.打开窗口/标签并让它们保存内容需要什么魔力?

由于我们使用WebSockets(key1/key2),因此仅适用于Chrome,无需其他浏览器.

Fab*_*ini 2

事后你可以使用数据 URI:

window.open("data:text/plain;base64,"+btoa(theCode))