Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.02.2012, 22:47
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

Проверка загрузки изображения
Нужно проверить грузится ли изображение или нет на данный момент:
<body>
<img src='http://javascript.ru/forum/images/ca_serenity/misc/logo.gif'>
<script>
var img = document.getElementsByTagName('img') //берем нашу картинку
HTMLImageElement.prototype.check_load = function () { 
this.onload = function () { //при загрузки картинки возвращать true
return true;
}
return false; //когда картикнка не грузится возвращать false
}
setInterval(function () { 
console.log(img[0].check_load()) //пишет false,false,false,flase
},1000)
</script>
</body>

Почему все время возвращает false? Желательно если исправите ошибку в скрипте, а не приводить другой вариант
_______
Хотя я кажется догадался, вначале браузер загружает картинку, потом скрипт, из-за этого он и выдает что она загружена, но если переместить картинку ниже, то вначале загрузится скрипт, будет ожидать загрузки картинки(т.к. на тот момент ее для него нет) и потом опять будет выдавать false. Так как все-таки можно проверить загружается картинка или нет?
__________________
оляля, ололо

Последний раз редактировалось 9xakep, 07.02.2012 в 22:51.
Ответить с цитированием
  #2 (permalink)  
Старый 07.02.2012, 22:49
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Код, мягко говоря, очень странный с какой-то извращённой логикой.

У картинок есть свойство complete.
Ответить с цитированием
  #3 (permalink)  
Старый 07.02.2012, 22:54
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

Спасибо, почитаю. Почему с "извращённой логикой"? Вы бы как сделали? (не пользуясь встроенными методами\свойствами итд)
__________________
оляля, ололо
Ответить с цитированием
  #4 (permalink)  
Старый 07.02.2012, 22:58
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Я бы использовал свойство complete.

Про извращённую логику медитировать на эту функцию до полного просветления
HTMLImageElement.prototype.check_load = function () {
    this.onload = function () { //при загрузки картинки возвращать true
        return true;
    }
    return false; //когда картикнка не грузится возвращать false
}
Ответить с цитированием
  #5 (permalink)  
Старый 07.02.2012, 23:10
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

Ну когда картинка загружается, то событие onload будет исполняться и соответсвенно возвращать true. Когда картинка загружена, то событие onload исполняться не будет и следовательно будет возвращать false
__________________
оляля, ололо
Ответить с цитированием
  #6 (permalink)  
Старый 08.02.2012, 08:48
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

Спасибо , ливаандриамарум, сделаю по-другому
__________________
оляля, ололо
Ответить с цитированием
  #7 (permalink)  
Старый 08.02.2012, 13:26
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

HTMLImageElement.prototype.check_load = function () {
    this.onload = this.onload || function () { 
        this.check_load = function(){ return true; };
    }
    return false; //когда картикнка не грузится возвращать false
}
Ответить с цитированием
  #8 (permalink)  
Старый 08.02.2012, 18:13
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

nikita.mmf,
Спасибо
__________________
оляля, ололо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
показать класс после загрузки изображения malkoff jQuery 4 06.11.2011 03:01
проверка загрузки изображений satyr22 Javascript под браузер 3 24.08.2011 11:08
Помогите пожалуйста с обьяснением загрузки изображения на сервер. 0931454574 Серверные языки и технологии 3 11.05.2011 18:05
Проверка размера изображения Bizarre Общие вопросы Javascript 4 09.03.2011 18:02
проверка загрузки рисунка в IE HelpeR Элементы интерфейса 8 21.01.2010 12:14