簡體   English   中英

為什么我不能從Javascript將圖像源設置為blob?

[英]Why can't I set image source to blob from Javascript?

我正在嘗試使用Javascript LoadImage庫( https://github.com/blueimp/JavaScript-Load-Image )從文件加載圖像。

load方法返回一個圖像對象,其src設置為某個blob對象:

<img src="blob:http%3A//localhost%3A3577/902d4e78-2e3e-467c-99ce-6683db24996e" width="960" height="540">

如果我將此元素附加到DOM,它會很好地顯示出來。 但是,根據我的需要,我只需要圖像數據,而不是DOM對象。 我需要獲取該數據並將另一個現有元素的src設置為該數據。 所以,就像任何理智的人一樣,我得到返回對象的srcblob:http%3A//localhost%3A3577/902d4e78-2e3e-467c-99ce-6683db24996e ),得到對我現有圖像DOM對象的引用(命名img下面),並使用jQuery,設置其src:

img.attr('src', src);

這導致我現有的圖像對象變為:

<img src="blob:http%3A//localhost%3A3577/902d4e78-2e3e-467c-99ce-6683db24996e">

是的,完全相同(期望明確的widthheight屬性,我也試圖添加,這一切都沒有改變)。 但是現在的標簽不是圖像,而是顯示損壞的圖像:

在此輸入圖像描述

為什么以及如何在具有相同src圖像標簽時,一個可以顯示圖像而另一個不能?

這很可能是由於LoadImage庫調用URL.revokeObjectURL()以釋放分配的映像。

嘗試指定 noRevoke選項。

暫無
暫無

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

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