Передайте изображение как переменную (javascript, canvas) - PullRequest
1 голос
/ 03 марта 2012

У меня есть функция imageReader(image), которая обрабатывает изображение после его загрузки (здесь id = "bgImage"). Написав imageReader(this), я могу получить само изображение в качестве переменной, что позволит мне получить его ширину, нарисовать его и т. Д.

Дело в том, что я хочу иметь возможность нацеливать любое изображение на своей странице, когда захочу (и не зависеть от onload="javascript:imageReader(this)"), но $('bgImage').load(function(){}); не приведет меня туда. переменная с моей функцией? Большое спасибо!

<body>
    <canvas id="bg" width="0" height="0"></canvas>
    <img id="bgImage" src="img/logo.png" onload="javascript:imageReader(this);"></img>
</body>

Несколько вещей, которые я делаю со своей следующей функцией

   function imageReader(image) {
      var imgWidth=image.width;
      var imgHeight=image.height;
      myCanvasContext.drawImage(image,0,0);
   }

1 Ответ

0 голосов
/ 03 марта 2012

На самом деле, я не получил ваш вопрос 100%
Я думаю, у вас есть трудности с получением объекта Image после того, как изображение было загружено правильно?
Вы можете сделать это, проверив элемент image complete с помощью JavaScript
во-первых, объявите функцию JS, чтобы определить, загружено изображение или нет:
var complete_load = function () {}
затем внутри функции получите элемент:
var the_img = document.getElementsById("bgImage");
затем проверьте его полный параметр, если он еще не загружен, повторите цикл с setInterval:

if(the_img.complete){
   setInterval(complete_load , 200);
}

как насчет этого?

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