Не могли бы вы предоставить больше информации? Почему вы отменяете обработчики событий? Это просто для того, чтобы один не мог снова щелкнуть и получить второй вызов ajax, пока первый еще работает? Если это так, я бы сделал это по-другому: привязать обработчик к изображениям и оставить их связанными. Если кто-то нажимает на изображение, вызывается ваш обработчик. Затем обработчик запускает запрос ajax и устанавливает флаг (например, loading = true). Если щелкнуть изображения еще раз, функция игнорирует это, пока загрузка выполняется. Если запрос выполнен, вы сбрасываете флаг загрузки на false.
Эта техника часто используется и должна быть быстрее, чем ходить по DOM, находить элементы, связывающие обработчики событий и так далее. Как побочный эффект, у вас теперь есть флаг загрузки, который можно использовать для отображения пульсатора во время загрузки.