Я хочу установить источник изображения на источник base64, но он не работает:
<img id="img" src="" />
JavaScript
document.getElementById("img").src = "data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAUA
AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO
9TXL0Y4OHwAAAABJRU5ErkJggg=="
javascript
base64
поппель
источник
источник
Ответы:
Попробуйте
setAttribute
вместо этого использовать :document.getElementById('img') .setAttribute( 'src', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==' );
Реальный ответ: (И убедитесь, что вы удалили разрывы строк в base64.)
источник
setAttribute
. Именно после этого я заметил разрывы строк в кодировке base64. (Так как я торопился получить ответ, я не пробовал егоsrc=
после исправления разрывов строк.)Если вы предпочитаете использовать jQuery для установки изображения из Base64:
$("#img").attr('src', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==');
источник
prop
следует использовать вместоattr
обновления DOM.attr
относится к исходному состоянию страницы при загрузке.img = new Image(); img.src = "data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" img.outerHTML; "<img src="data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==">"
источник
Ваша проблема - cr (возврат каретки)
http://jsfiddle.net/NT9KB/210/
ты можешь использовать:
document.getElementById("img").src = "data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="
источник