2013-03-26 35 views
1

博學多聞文件,使用HTML5文件handlining API,我們可以inpty類型的文件進行協作讀取文件。怎麼樣與像 拍/images/myimage.png 等準備的文件?HTML5從路徑

任何形式的幫助表示讚賞

回答

3

是的,如果它是鉻!使用filesytem玩你將能夠做到這一點。

1

簡單的答案是;沒有。當你的HTML/CSS/images/JavaScript被下載到客戶端時,你正在破壞服務器。

簡單化的流程

  • 用戶請求的URL在瀏覽器中(例如,www.mydomain.com/index.html
  • 服務器讀取並獲取所需要的文件(www.mydomain.com/index.html
  • index.html,然後它鏈接的資源會下載到用戶的瀏覽器
  • 用戶的瀏覽器將呈現HTML頁面
    • 用戶的瀏覽器將只獲取與請求附帶的文件(圖像/ someimages.png和類似的東西腳本/的jquery.js)

說明

的問題,你在這裏面臨的問題是,當HTML在本地呈現時,它不再與服務器建立鏈接,從而請求包含文件方式的內容在邏輯上與駐留在服務器上不相似。

變通

你能做什麼,但是這忽略了問題的原因,是爲了使服務器端腳本在JSP/PHP/ASP /等。這個腳本將遍歷你想要的目錄。在PHP中,您可以通過使用opendir()http://php.net/opendir)來完成此操作。

隨着XHR/AJAX調用,你可以請求PHP頁面返回目錄列表。最簡單的方法是將jQuery的$.post()函數與JSON結合使用。

注意!

您需要記住,如果您使用解決方法,您將存儲一個鏈接,讓所有人都可以看到您請求的在線目錄中的內容(例如,http://www.mydomain.com/my_image_dirlist.php會返回一串字符串化的所有內容(或更少根據服務器端腳本中的某些規則)在http://www.mydomain.com/images/內。

注意

  • http://www.html5rocks.com/en/tutorials/file/filesystem/(似乎只在Chrome工作,但仍然不正是你想要的)
  • 如果不從文件夾中的所有文件需要,但只有那些已經在URL請求中下載到瀏覽器緩存中的文件;您可以嘗試在線搜索訪問當前加載頁面的瀏覽器緩存(下載文件)。或者像DOM-walker和CSS閱讀器(正則表達式?)一樣來查看所有文件關係的位置。