Причинение изображения, которое не будет добавлено в дерево dom на обработчике ошибки img - PullRequest
1 голос
/ 16 сентября 2011

Я пытаюсь добиться следующего:

Я загружаю изображение, которое может существовать или не существовать на сервере.Обработчик ошибки изображения запускается, когда изображение не существует.То, что я хочу сделать, это удалить изображение из дерева dom (чтобы не отображался значок разорванного изображения).

следующее:

onerror="this.parentElement.removeChild(this);"

Работает в Chrome, но не в Firefox,Причина в том, что изображение еще не присоединено к domtree (parentElement равно null).

Я также попытался установить атрибут src для какого-либо прозрачного изображения на сервере, но тогда мой обработчик onload вызывается eventhoughЯ установил:

onerror="this.onload=null;this.src='transparentimage';"

Есть ли другой способ добиться того, чего я хочу?

Не могу понять!

Какие-нибудь блестящие идеи?

С уважением,

Niclas

Ответы [ 2 ]

1 голос
/ 22 сентября 2011

Простое решение этой проблемы:

<img src="imageURL" style="display:none" onload="this.style.display='block'"/>

Возможно, это кому-нибудь поможет.

0 голосов
/ 18 апреля 2012

Вот как это сделать с помощью jQuery:
$ ("img"). error (function () { $ (Это) .remove (); });

Обратите внимание, что для IE вы должны установить обработчик ошибок после элементов в HTML. Если вы сделаете это с document.ready (), он не сработает.

...