обьект Image неправильно возвращает height, width
var image=new Image();
image.src=url;
function imageLoadTrue() {
if(!image.complete) {
setTimeout(image.id='image', 10);
imageLoadTrue();
}
}
alert(image.width+'='+image.height)
иногда возвращает "0=0", в ряде случаев правильные размеры. Не могу увидеть закономерности. Плз, подскажите где собака зарылась? |
Andrey1205,
считывать размеры надо после полной загрузки картинки Т. е либо из события <img onload="FuncTest()" либо по онлоад ставим флаг и тестируем setTimeout из своей функции - флаг и тогда считываем размеры, |
url="1.jpg"
var image=new Image();
image.src=url;
function imageLoadTrue() {
if(!image.complete) {
setTimeout(image.id='image', 10);
imageLoadTrue();
}
}
document.body.appendChild(image)
alert(image.width+'='+image.height)
А ты изображения добавил в код или нет? document.body.appendChild(image) |
Цитата:
var image=new Image();
image.onload=function(){alert(image.width+'='+image.height)
};
image.src='08.jpg';
|
Цитата:
|
т.е я так понимаю можно тупо забить на image.complete? и брать высоту\ширину после загрузки по onload?
вот сдесь еще нашел пост про это: http://javascript.ru/forum/misc/8772...ge-onload.html |
Цитата:
А добавлять его не обязательно-например в canvas можно выводить |
Цитата:
грузится в прелоадер -а это не кеш браузера. тест простой -при загрузке в прелоадер что в первый что в последующие разы будет одно и тоже время. чего бы не было если бы использовался кеш. тест другой -замена изображения на другое с темже именем -должно выводиться то что ранее-не выведется Р.S если бы у бабушки были яйца она была бы дедушкой,и соответственно загрузка в прелоадер называлась бы загрузкой в кеш а не в прелоадер |
Цитата:
|
| Часовой пояс GMT +3, время: 08:09. |