Jump to content
  • 0

image onerror/onload


DjTarik
 Share

Question

В продолжение темы http://forum.htmlbook.ru/index.php?showtopic=24465

Ситуация такая:

1. Имеется <img />

2. Есть 2-а события:

- onload

- onerror

3. Сначала объявил события - потом смена 'src'

Когда 'src' верный - проблем нет. Срабатывает только 'onload'.

Когда 'src' "битый" - должен срабатывать 'onerror', в нём смена 'src' - и потом снова 'onload'.

Всё.

Ссылка такая: http://tarik.kasperovich.ru/test_15/index.html

Это работает везде, кроме Opera 10.50.

Причём во всех остальных версиях Opera - всё нормально... O_o

Тестировал в 11.00 10.60 10.00 9.64 9.60 9.50...

Какого в Opera 10.50 не пашет? В чём отличие или что я не так делаю?

Код проблемного места:

var image = document.getElementById('GalleryImg');

image.onload = function(){
[...]
}

image.onerror = function(){

[...]

this.src = 'popup_broken.gif';
this.width = 400;
this.height = 250;
this.alt = this.title = ' ';
}

image.src = obj.href;

Спасибо.

Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0
А работает в теге? Т.е. если записать так:

<img src="путь" alt="" onerror="alert(1);" />

Да, само событие работает и так и так.

Конкретно, когда срабатывает смена 'src' в 'onerror' - должно снова сработать 'onload'?

Этого нет в Operа 10.50

Link to comment
Share on other sites

  • 0
Действительно глючная версия... Вот выдержка из списка багов, пофикшеных в версии 10.52:

Слушай... А где ты это нашёл? Дай плиз ссылку, где описаны баги конкретных версий или как это узнать? А то 2 дня искал решение - а тут такое... O_o

Link to comment
Share on other sites

  • 0

Походу да... И статистика показывает. что с выходом новой Оперы, можно смело забивать на старую. Т.е. как бы 10-я ветка уже не актуальна. Проверяйте на 11 и не парьтесь.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy