@html_student
Молодой и глупый.

Как изменить скрипт для работы с несколькими блоками?

Скажите, как переделать скрипт чтоб он воспринимал 2 блока?

Код без проблем работает так,
<li class="variant_amount">
<span style="background-color:#fff;" class="color_icon"></span>
<input name="variant" class="color_input" type="hidden" value="#fff" />
</li>


$('.color_icon, .color_link').ColorPicker({
		color: $('.color_input').val(),
		onShow: function (colpkr) {
			$(colpkr).fadeIn(500);
			return false;
		},
		onHide: function (colpkr) {
			$(colpkr).fadeOut(500);
			return false;
		},
		onChange: function (hsb, hex, rgb) {
			$('.color_icon').css('backgroundColor', '#' + hex);
			$('.color_input').val(hex);
			$('.color_input').ColorPickerHide();
		}
	});


Но если править

<li class="variant_amount">
<span style="background-color:#fff;" class="color_icon"></span>
<input name="variant" class="color_input" type="hidden" value="#fff" />
</li>
<li class="variant_amount">
<span style="background-color:#fff;" class="color_icon"></span>
<input name="variant2" class="color_input" type="hidden" value="#fff" />
</li>


Как написать чтоб привязывался не в variant2 и т.д. а был универсален, к примеру чтоб значений было 100
  • Вопрос задан
  • 53 просмотра
Решения вопроса 1
Для начала забыть наконец про jquery :)
К тому же нет четкой формулировки того, что ваш код вообще делает, что вы от него хотите, если взаимодействие (клик, изменение) и т.д., то через нативный js вы можете просто найти все эти элементы по одинаковому классу через document.querySelectorAll('.class'), а затем пройтись по каждому через forEach и назначить нужное событие.
НО, опять же, так как четкой формулировки нет, что вы хотите получить как результат, то мои слова - всего лишь предположения.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы