Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.08.2021, 21:25   #1
ak167
Пользователь
 
Аватар для ak167
 
Регистрация: 24.01.2010
Сообщений: 92
По умолчанию Анимация увеличения картинок для будущей галереи

Вот, продолжаю учить JS, начал потихоньку писать маленькие скрипты, а именно сегодня написал вот этот http://bankfotok.ru/test1/ В нём моя красивая самодельная анимация картинок при клике на них. Всё работает, но есть одно но - в консоле вылезает ошибка:

Цитата:
Uncaught TypeError: Cannot read property 'addEventListener' of undefined
at (index):27
Дело в том, что скрипт выполняется всегда даже без клика по картинке, а нужно чтобы он проверял есть ли клик и если есть, тогда выполнять. Но как это сделать? Нужно что-то типа:
if (cklick) { делаем }
Как такое сделать на JS?
ak167 вне форума Ответить с цитированием
Старый 08.09.2021, 18:19   #2
victorshkoda
Пользователь
 
Аватар для victorshkoda
 
Регистрация: 04.01.2012
Сообщений: 71
По умолчанию Нормально работает.

Никаких ошибок. В каком браузере смотрите?

В крайнем случае:
Код:
// увеличим картинку при клике
let productsImages = document.querySelectorAll(".products_images img"); // получим МАССИВ
for (let s = 0; s < productsImages.length; s++)
{
	// увеличим картинку, по которой кликнули
    if(productsImages[s]!==undefined){
	productsImages[s].addEventListener("click", function()
	{
		productsImages[s].style.transition = '1.2s';
		productsImages[s].style.transform = 'scale(1.5)';
		productsImages[s].style.margin = '10px 50px 10px 50px';

		
		// уменьшим остальные картинки
		for (let ss = 0; ss < productsImages.length; ss++)
		{
			if (ss != s) 
			{
				productsImages[ss].style.transform = 'scale(1)';
				productsImages[ss].style.width = '200px';
				productsImages[ss].style.margin = '10px';
			}
		}
	});
    }
}
Вложения
Тип файла: zip Запись_2021_09_08_21_16_38_684.zip (1.27 Мб, 1 просмотров)

Последний раз редактировалось victorshkoda; 08.09.2021 в 18:25.
victorshkoda вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кнопка для открытия галереи Redersy WordPress и другие CMS 0 25.08.2016 01:32
Анимация картинок для сайта mitchel12 HTML и CSS 2 14.01.2016 07:56
Провожу исследование рынка для себя и своей будущей программы и компаний.Изучаю потребительский спрос.Итак приступим. jei_ Фриланс 2 04.05.2013 11:11
анимация со сменой картинок xsamdy Помощь студентам 0 18.06.2009 20:01