我正在寫一個圖片庫應用程序,從RSS提要拉圖像,所以不能直接編輯圖像。有沒有辦法縮減圖像,使加載時間沒有大規模陷入
不幸的是,一些畫廊是相當大的,因爲文件上傳的大規模。
有沒有辦法確定何時加載圖像以使它們以合理的尺寸加載到javascript/jquery中?
感謝您一如既往的幫助!
哦,如果即時將這些圖像直接從rss鏈接到它們源自的網站,比如google rss feed,那麼這些圖像可能會給我帶來麻煩,從他們的網站加載一大堆圖像?
我正在寫一個圖片庫應用程序,從RSS提要拉圖像,所以不能直接編輯圖像。有沒有辦法縮減圖像,使加載時間沒有大規模陷入
不幸的是,一些畫廊是相當大的,因爲文件上傳的大規模。
有沒有辦法確定何時加載圖像以使它們以合理的尺寸加載到javascript/jquery中?
感謝您一如既往的幫助!
哦,如果即時將這些圖像直接從rss鏈接到它們源自的網站,比如google rss feed,那麼這些圖像可能會給我帶來麻煩,從他們的網站加載一大堆圖像?
只用javascript/jquery,沒有。
假設在服務器上存儲圖像不是一個選項,您將不得不使用服務器端腳本(如php)將圖像加載到服務器上,將其縮小並將其傳送到瀏覽器。
所以,你的客戶端腳本會是這樣的
$("#myImgTag").attr('src', 'http://yourserver.com/getRSSimage.php?url=google.com/rss/reallyBigImage');
至於直接鏈接,它是一個法律的灰色地帶的合法性。如果你試圖說明這些圖像是你的圖像,那麼是非法的,但是,明確地顯示圖像來自所有必要的信用,這被認爲是確定的,特別是如果你不從中賺錢。
有沒有一種辦法,以確保當圖像加載到讓他們在使用JavaScript/jQuery的一個合理的規模 負荷?
沒有
如果IM直接從RSS到他們 源於該網站鏈接這些圖像,說 - 一個谷歌的RSS提要,可以土地我在任何 麻煩與他們加載大量的的圖片離開他們的網站?
是
簡短的回答:沒有不是真的。即使在邏輯上,這種轉變也必須發生在某個地方,而且你必須這樣做。既然如此,由於無論如何您都必須加載原始文件,所以沒有必要重新調整大小。至於盜鏈,我不認爲這是非法的,但你從這個網站盜鏈的網站會恨你。
你要求的是服務器端操作。客戶端瀏覽器中的jQuery只能在瀏覽器中接收到圖像後對其進行操作。要下載較小的圖像,您需要:
1)瞭解如何從網站請求較小的圖像而不是較大的圖像。例如,如果RSS源來自像Smugmug這樣的照片網站,則可以修改圖片網址以請求較小的尺寸。
2)修改服務器以支持更小尺寸的請求(我認爲這不適合您)。
無論你在做什麼都會讓你陷入困境,這取決於你所做的更多細節。網站上的公共圖片和公共RSS源允許合理使用這些內容,但不允許無限制地用於任何目的。我們必須知道更多的細節。
如果圖庫總是使用相同的RSS訂閱源,則可以考慮縮放並將圖像存儲在服務器上。當用戶訪問您的圖庫時,可以對「縮略圖」圖像是否可用以及是否加載該圖像進行簡單檢查。這需要一些JavaScript/AJAX,你必須編寫一些代碼來擴展和存儲圖像。
雖然這確實不理想。縮放和存儲圖像既是處理器又是內存密集型。如果您提供大量用戶和大量圖片,這不會很好地擴展。我看不出有任何問題,從服務器上拉出大量的圖像......這就是他們在那裏的權利?只要確保你不會浪費你的請求並尊重服務器的帶寬。
其他答案是正確的,因爲圖像優化需要在服務器端完成。有一些工具可以爲你做這項工作,但是,這將使你能夠通過修改你通過JS分配的圖像src來提供優化的圖像。
舉一個例子,看看http://www.punypng.com/api。
請注意,這不是理想的,因爲你依靠外部服務器的資源/ etc來提供圖像。
當然,我只是讓gallerys在我的個人網站上顯示我的picassa網絡相冊 - 所以我可以搗亂顯示格式化,而不必擔心編寫我自己的圖像上傳的東西和數據庫 – user667122