其他类似问题询问<input type="file" />
元素。这个问题是关于<input type="text" />
元素在不同浏览器中的不同行为。
对于图片故事创建Web应用程序,用户可以将图像从桌面拖动到浏览器窗口。在所有浏览器中,在所有平台上,JavaScript都可以将文件作为dataURL读取并显示图像。
如果Web应用程序可以将本地存储中的图像文件的完整路径与故事的其余部分一起存储,那将是很好的,这样可以在下次启动应用程序时重新创建完整的故事。另一种方法是将图像文件完整复制到本地存储,这将很快填满可用空间。另一种方法是将图像文件上传到服务器,然后再次下载,以便将其存储在浏览器的缓存中。
仅保存图像文件的路径效率最高。
我注意到至少可以在Safari上运行的解决方案。如果我像这样创建一个HTML输入元素......
<input type="text" placeholder="Drag files here">
...然后将文件拖到此输入元素,在Safari上,桌面文件的完整路径显示在输入元素中,并且可供JavaScript访问。
我测试的不同浏览器的结果不同:
我的问题:
这里是jsFiddle