@Keliorw

Как поменять отдельно каждый input когда он берётся в фокус?

Хочу сделать так что бы когда выделяешь окно ввода текста значение color менялось с rgba(0,0,0,0.3) на rgba(0,0,0,1), но у меня меняется только первый из 3-х input как мне сделать, что каждый менялся когда его выделаешь?

<form action="" method="POST" style="display: flex; flex-direction: column;">
                    <input type="text" name="name" placeholder="Введите ваше имя*" id="field-feedback" onfocus="swapOpacity()">
                    <input type="text" name="e-mail" placeholder="Введите ваш e-mail*" id="field-feedback" onfocus="swapOpacity()">
                    <input type="text" name="phone" placeholder="Введите ваш номер телефона*" id="field-feedback" onfocus="swapOpacity()">
                    <button type="submit" class="btn-feedback">Отправить данные</button>
                </form>


function swapOpacity() {
  document.getElementById('field-feedback').style.color = "rgba(0,0,0,1)";
}
  • Вопрос задан
  • 124 просмотра
Решения вопроса 1
Ankhena
@Ankhena Куратор тега JavaScript
Нежно люблю верстку
Если вы не учите js, а хотите изменить инпут в фокусе, то используйте css

input:focus {
color: rgba(0,0,0,1);
}

А если учите js, то изучите querySelectorAll и forEach, а также браузерные события и пишите их в скрипте, а не в разметке, не делайте кашу из кода.
https://developer.mozilla.org/ru/docs/Web/API/Docu...
https://learn.javascript.ru/introduction-browser-events
https://learn.javascript.ru/array-methods
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
AngryYumy
@AngryYumy
Заплати фрилансеру чеканой монетой
Поучить немного js да и html тоже.
1. На странице может быть только один уникальный ид.
2. Тут вы работаете с первый эл который находите, вам нужен масив.
3. И через event вызывать функцию (как пример.)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
summer Ярославль
от 100 000 до 140 000 ₽
КРАФТТЕК Санкт-Петербург
от 60 000 до 80 000 ₽