2012-09-02 26 views
2

當用戶選擇一張照片並點擊一個按鈕時,我想下載一個圖像文件(jpeg圖像)到用戶文件系統。到目前爲止,我搜索並找到this linkthis如何用JavaScript保存圖像

我在一個博客中看到,與jszip一起使用時可以下載,但可以啓用此功能,但沒有在此指定更遠的位置。是否有人知道如何下載圖像。我有圖像的鏈接,我只想讓用戶在他的系統上下載它,而不是再次查詢服務器。

任何人都可以提供給我一個例子。

+1

[你嘗試過什麼?](http://mattgemmell.com/2008/12/08/what-have-you-tried/)和[這裏](http://pixelgraphics.us/ downloadify/test.html)就是一個例子。 – Peter

+0

是的,我已經看到了...我在我的問題中明確提到它是圖像文件而不是文本文件 – Nav

+0

我試過jszip,但無法得到它在正確的格式...我提供了在問題 – Nav

回答

1

最後我做到了。對於任何人誰需要這在未來這裏是使用jQuery

jQuery.ajax({ 

    url: 'http://localhost:8080/yourwebsite/servlet?img=' + document.getElementById(id).alt, 
    //data: myData, 
    type: 'GET', 
    crossDomain: true, 
    dataType: 'jsonp', 
    // success: function() { alert("Success"); }, 
    // error: function() { alert('Failed!'); }, 
    // beforeSend: setHeader 
}); 

這一點,我不得不遇到這通常是阻止大多數網站,除非你遵循一些冗長的跨域的HTTP請求的問題,我該怎麼做處理。所以,我簡化了一下,並在我的servlet中調用了一個get方法,並將它傳遞給它下載圖像的圖像的URL。如果你在同一個域上,但是這樣做更容易,而且更容易。不符合我的要求,並且此代碼對我有效:)

+0

你的代碼在我的工作[條件](http://stackoverflow.com/questions/27555791/how-to-export-all-images-that-got-retrieve-from-html-dom-parser?noredirect=1#comment43537948_27555791)? – 2014-12-18 21:26:00

3

您可以將圖像加載到畫布元素中獲取畫布的數據網址,並打開一個新的窗口,並將數據網址作爲源。看看這個例子:https://gist.github.com/1875132

+0

謝謝你的評論..我會嘗試一下:) ...順便說一句,我使用一個正常的img標籤將這個代碼工作的img標籤或做它ony工作的畫布標籤? – Nav

+0

問題是你不能獲取圖片標籤的數據網址。這就是你需要先將其轉換爲畫布的方式。 –

+0

可以üPLZ解釋什麼數據的網址是...我有點小白這個東西:(其實我正在製作一個網站,這是與Facebook和Facebook集成通過我使用圖形API(jpeg)的鏈接。圖像檢索代碼是在這裏的鏈接http://stackoverflow.com/questions/12234853/how-to-get-large-pictures-from-photo-album-via-facebook-graph-api – Nav

2

使用HTML5 download屬性。

作爲選項,您可以將文件名設置爲屬性值。

<a href="/images/image-name.jpg" download="new-image-name.jpg">