Что запускает обработчик события onerror для тегов объекта в ie?
Мы проводили тестирование некоторых встроенных флеш-виджетов.
хотя я знаю, что событие onerror, когда оно прикреплено к тегу объекта, не очень подходит для разных браузеров, мы довольно часто вызываем этот обработчик для пользователей Internet Explorer.
хотя я совершенно уверен, что этот обработчик будет вызываться, когда SWF-файл не может быть загружен (например, 404, 410, ошибка сети и т. д.), он вызывается в каких-либо других обстоятельствах?
поскольку эти виджеты не являются нашими собственными, возможно ли "выбросить" событие onerror из встроенного флэш-файла? если так, то это может быть причиной того, почему мы видим это.
я думаю, что я должен добавить это также, возможно ли получить какую-либо дополнительную информацию относительно того, что вызвало событие onerror, когда оно вызывается?
Подводя итог, мы ищем, чтобы знать погоду, можно с уверенностью предположить, что ЕСЛИ событие onerror вызывается из тега объекта, что оно было вызвано тем, что SWF-файл не был загружен успешно, и, таким образом, мы можем попытаться загрузить его из другой URL. да, мы просто не хотим пытаться перезагрузить SWF, если по какой-то другой причине был запущен onerror, тогда SWF не загружается.
некоторая дополнительная информация:
Мы используем метод вставки вспышки. и просто добавив onerror к тегу объекта, следующим образом:
<object .... onerror="ourAjaxLogFunction()">
как всегда, спасибо
1 ответ
Документация для onerror
говорит (акцент мой):
Чтобы вызвать, вызвать одну из следующих ошибок:
Ошибка сценария выполнения, например, недопустимая ссылка на объект или нарушение безопасности.
Ошибка при загрузке объекта, например изображения.
Новое в Internet Explorer 9. Произошла ошибка при получении медиа-данных.
Возможно, ваш Flash-контент пытается пересечь какую-то границу безопасности. Если это так, попытка перезагрузить его из другого источника не поможет. Я бы посоветовал вам провести дальнейшие исследования сообщений об ошибках, передаваемых вашему обработчику.