Вы проводите локальное тестирование, не так ли, указывая на URL файла?
Попробуйте протестировать на реальном сервере, даже если он только локальный. Я полагаю, что Firefox использует код состояния HTTP, возвращенный из изображения GET, чтобы вызвать ошибку; если вы загружаете из файла: // ... URL, сервер не задействован, поэтому вы не получите сообщение об ошибке.
Из документов jQuery API для error()
:
Это событие может не срабатывать правильно, если страница обслуживается локально. Поскольку ошибка зависит от нормальных кодов состояния HTTP, она обычно не будет запускаться, если в URL-адресе используется файл file: protocol.
РЕДАКТИРОВАТЬ: Как мы уже обсуждали в комментариях, это происходит потому, что по какой-то причине ваш сервер интрасети не отвечает на отсутствующий ресурс с 404 (или любой другой ошибкой, по звукам вещей.)
Поскольку Firefox не получает ошибку, он не запускает обработчик ошибок, который выглядит как нормальное поведение.
Я думаю, что ваша проблема просто стала: «мой сервер не возвращает 404 ошибки за отсутствующий контент», но вам, возможно, придется поэкспериментировать немного больше, чтобы собрать доказательства, прежде чем спрашивать их (и, возможно, спросить об этом на Serverfault, а не на SO ...)