Есть такой пример кода: https://repl.it/@Ambrance/loadImgv2
По нажатию на кнопку “Загрузить” загружаются картинки. При нажатии на одну из них появляется возможность управлять ею с помощью кнопок.
Проблема в том, что при переключении с одной картинки на другую они потом уже вместе начинают реагировать на кнопки.
Как сделать, чтобы пока я управляюсь с одной картинкой, остальные на кнопки никак не реагировали?
Заведи глобальную переменную currentImg
, записывай в нее ссылку на узел выбранного изображения. А обработчики кликов по кнопкам управления будут обращаться к этой currentImg
(и не забудь проверить что значение в переменной есть на случай когда ни одно изображение не выбрано).
Сейчас ошибка в том что при каждом вызове handle(img)
создается обработчик, который продолжает жить, и работает с конкретным img
, переданным в аргумент. Сколько раз вызвал handle(img)
столько раз обработчики и создались. При этом конкретный img
“впаян” эти обработчики.
Кажется получилось и работает. Но я ничего не проверяю. Остается какая-то ошибка, которую я не замечаю?
Понажимай на кнопки до того как первое изображение подгружено
Консоль молчит… Разве что мне только специально выводить туда currentImg
.
Неожиданно для меня. Скорее всего я представляю себе не именно то что реализовано.
Ошибок нет - и порядок. Будут - заходи.
Спасибо)