Могу ли я поместить результат функции $ .post с содержимым GIF в объект JavaScript Image? - PullRequest
1 голос
/ 27 января 2012

Сервер возвращает изображение только по запросу POST.

Я должен предварительно загрузить изображение.

Как поместить результат в объект JavaScript?

$.post('image.php', {params: complexParamsObject}, function(result) {
  var image = new Image();

  // put result to 'image' object
});

1 Ответ

2 голосов
/ 27 января 2012

Если вы хотите, чтобы URL возвращался из записи, преобразованной в тег изображения, вы можете использовать это

var img = new Image(100,100); // width, height values are optional params 
img.src = result; //or may be result.url depending of what you got in return

, если вы хотите вернуть содержимое изображения, вам придется возвращать содержимое в кодировке base64.и используя DataURL, вы можете создать элемент изображения.эта статья проливает больше света на это ..

http://www.websiteoptimization.com/speed/tweak/inline-images/

РЕДАКТИРОВАТЬ: да base64 является строковым представлением. На самом деле вам придется конвертировать изображение в байт [] и затем кодироватьэто base64 строка .а затем вернуть эту строку, используя метод post ... где src = "data: image / gif; base64, (здесь содержимое кодированного изображения base64)

<img src="data:image/gif;base64,R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0jvb29t/f3//Ub/
/ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAARe8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcpp
V0aCcGCmTIHEIUEqjgaORCMxIC6e0CcguWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7" 
width="16" height="14" alt="embedded folder icon">

также взгляните на эту тему для кодирования base64 и изображениясоздание. Преобразование и вставка данных Base64 в Canvas в Javascript

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...