Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.06.2013, 08:58
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

Почему onload срабатывает до того как картинка полностью проявится?
Здрасте. Я тут хотел сделать проверку загрузились ли все картинки на странице(Подобное хотел сделать со скриптами и линками но не знаю как =\) но когда проверял в хроме добавил трёхтонные картинки и счётчик который я сделал досчитал до 15(количество картинок) до того как они все были полностью отображены. Не подскажете почему?
x=0;
for(i=0;i<15;i++){document.getElementsByTagName('img')[x].onload=alert(x);x++;}
Ответить с цитированием
  #2 (permalink)  
Старый 24.06.2013, 09:11
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

может так
var x=0;
for(i=0;i<15;i++){document.getElementsByTagName('img')[i].onload=function(){alert(x);x++;}}

скрипты поддерживают onload и onerror
var sc=document.createElement('script');
sc.onload=function(){alert('load')};
sc.onerror=function(){alert('error')};
sc.src='tratata.js';
document.head.appendChild(sc);

Последний раз редактировалось vadim5june, 24.06.2013 в 09:19.
Ответить с цитированием
  #3 (permalink)  
Старый 24.06.2013, 09:18
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

vadim5june,
такая, казалось бы мелоч, но сработало. Просто поставит [i] в замену [x] и картинки отрисоваились сразу после того как счёт закончился.
Ответить с цитированием
  #4 (permalink)  
Старый 24.06.2013, 09:24
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

Сообщение от vadim5june Посмотреть сообщение
может так
var x=0;
for(i=0;i<15;i++){document.getElementsByTagName('img')[i].onload=function(){alert(x);x++;}}

скрипты поддерживают onload и onerror
var sc=document.createElement('script');
sc.onload=function(){alert('load')};
sc.onerror=function(){alert('error')};
sc.src='tratata.js';
document.head.appendChild(sc);
То есть придётся создавать все скрипты на странице отдельно чтоб узнать готовы ли они или нет?
Ответить с цитированием
  #5 (permalink)  
Старый 24.06.2013, 09:28
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от koeshiro
То есть придётся создавать все скрипты на странице отдельно чтоб узнать готовы ли они или нет?
не обязательно можно и к уже созданным применить
можно так писать
<script src='1.js' onload='f(this)' onerror='er(this)'></script>
<script>function f(t){alert(t.src+'-loaded')}</script>

Последний раз редактировалось vadim5june, 24.06.2013 в 09:38.
Ответить с цитированием
  #6 (permalink)  
Старый 24.06.2013, 09:31
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

Сообщение от vadim5june Посмотреть сообщение
не обязательно можно и к уже созданным применить
И как же это? Разве <script> поддерживает имя или классы? Быть может id?
Ответить с цитированием
  #7 (permalink)  
Старый 24.06.2013, 09:34
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

Сообщение от vadim5june Посмотреть сообщение
не обязательно можно и к уже созданным применить
можно так писать
<script src='1.js' onload=f(this) onerror=er(this)></script>
О понятно. А почему это дело без скобок?
Ответить с цитированием
  #8 (permalink)  
Старый 24.06.2013, 09:39
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от koeshiro
А почему это дело без скобок?
поставил кавычки
о каких скобках речь?

Последний раз редактировалось vadim5june, 24.06.2013 в 09:42.
Ответить с цитированием
  #9 (permalink)  
Старый 24.06.2013, 09:43
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

Сообщение от vadim5june Посмотреть сообщение
поставил кавычки
о каких скобках речь?
Ну так ож оговарился. . . . .
Ответить с цитированием
  #10 (permalink)  
Старый 24.06.2013, 09:48
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

Стоп а с линками тоже самое что ли?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сделать чтобы в popup окне показывалось картинка? sarik Общие вопросы Javascript 31 15.03.2013 13:12
Почему скрипт срабатывает только после обновления страницы? Randomizer jQuery 2 01.09.2010 19:01
Не могу обратиться к элементам div, после того как они получены через $.ajax igsavenko jQuery 1 31.05.2010 17:53