Сообщение от kostyanet
|
/* пустой объект, событие load которого сработает всегда, в любом даже самом хитрожопом браузере типа Хрома */
var img=new Image();
/* запрограммировать событие загрузки надо до впаривания src */
img.onload=function(){
/* внутри кложи this - это оно само, загруженная картинка */
im.src=this.src; /* теперь можно профыкать в src элемента */
/* у этого объекта нет еще стилей,
но зато есть нормальные height, width */
alert(this.width); // тут все понятно
};
/* с этого момента браузер кОчает картинку в пустой объект */
im.src='адрес_картинки';
|
Спасибо, работает! Вот только можете мне объяснить, за счёт чего?
Не пойму, в чём тут колдунство:
im.src=this.src;
и почему запрограммировать событие загрузки надо до впаривания src. Объсните, пожалуйста, нубу)
Ещё интересный момент, забыл упомянуть в 1ом посте:
var b = document.getElementById('b');
var im = document.getElementById('fullimage');
im.setAttribute('src', '1.jpg');
console.log(getComputedStyle(im)); //в консоли уже прописано св-во width, причём корректно! Т.е., getComputedStyle() уже вернула коллекцию CSS-стилей!
alert(getComputedStyle(im).width); //но здесь же 0px. Какого рожна?)