Я использую JavaScript с библиотекой jQuery для управления миниатюрами изображений, содержащимися в неупорядоченном списке. Когда изображение загружено, оно выполняет одно действие, а при возникновении ошибки - другое. В качестве событий я использую методы jQuery load()
и error()
. После этих событий я проверяю DOM-элемент image на наличие .complete, чтобы убедиться, что изображение еще не загружено, прежде чем jQuery сможет зарегистрировать события.
Он работает правильно, за исключением случаев, когда происходит ошибка до того, как jQuery может зарегистрировать события. Единственное решение, о котором я могу подумать, - это использовать атрибут img onerror
для хранения "флага" где-то глобально (или на самом узле). это говорит о том, что это не удалось, поэтому jQuery может проверить этот "store/node" при проверке .complete.
У кого-нибудь есть лучшее решение?
Изменение: Основные пункты выделены жирным шрифтом и добавлены дополнительные подробности ниже: Я проверяю, завершено ли изображение (оно также загружено) ПОСЛЕ того, как я добавляю на изображение событие загрузки и ошибки. Таким образом, , если изображение было загружено до того, как события были зарегистрированы, я все равно буду знать. Если изображение не загружается после событий, тогда события позаботятся об этом, когда это произойдет. Проблема в том, что я могу легко проверить, загружено ли уже изображение, но не могу сказать, произошла ли ошибка.