簡體   English   中英

允許用戶從Greasemonkey腳本導入文件?

[英]Allow user to import a file from a Greasemonkey script?

據我所知,這似乎是不可能的,但可以這樣:

我正在整理一個Greasemonkey腳本。 在此腳本中,最終用戶能夠將某些內容保存到html5 localStorage變量中(不是腳本的用途,僅用於腳本的一部分)。

由於緩存清除可以清除這些存儲值,因此我創建了導出功能,該功能只是一種未知的數據類型,會強制下載文件。

data:something;charset=utf-8,'+encodeURIComponent(somevariable)

我的問題是關於創建導入功能。 由於文件保存時沒有擴展名,並且此腳本將僅在Linux中使用,因此直接在文本程序中打開文件並將數據粘貼到文本區域將是一種簡單的導入方法。

但是,有沒有沒有某種服務器端腳本或外部服務器的方法讓用戶選擇要導入的文件? 例如一個對話框,允許最終用戶從計算機中選擇文件,然后我可以在其中操作文件?

HTML5引入了HTML5 File API

使用HTML5中添加到DOM中的File API,現在可以使Web內容要求用戶選擇本地文件,然后讀取這些文件的內容。 可以通過使用HTML元素或通過拖放來完成此選擇。

您可以掛鈎change事件並檢查evt.target.files;

另外,您可以使用Blob處理數據,而不必依賴數據uri。

這是一個很好的教程

HTML 5 File API可以解救!

http://www.html5rocks.com/zh-CN/tutorials/file/dndfiles/

IE9不支持,但大多數現代瀏覽器都支持它: http : //caniuse.com/#search=file%20api

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM