Показать сообщение отдельно
  #1 (permalink)  
Старый 18.01.2021, 12:13
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 668

Button со скриптом
Есть вот такой код.

<!doctype html>
<html lang="ru">
<head>
	<meta charset="utf-8">
	<title>index</title>

	<meta name="viewport" content="width=device-width,initial-scale=1">
	<meta name="description" content="index">
	<meta name="Keywords" content="index"> 
    <style>
        .blok{
            width: 400px;
            height: 100px;
            margin: 10px auto;
            display: flex;
            justify-content: space-around;
        }
        .kvadrat{
            width: 100px;
            height: 100px;
            border: 3px solid #000;
        }
        #aktiv{
            border: 3px solid #0504aa;
        }
    </style>
</head>

<body>
    <div class="blok">
        <button class="kvadrat k1" id="aktiv"></button>
        <button class="kvadrat k2"></button>
        <button class="kvadrat k3"></button>
    </div>
<script>
    let k1 = document.querySelector(".k1");
    let k2 = document.querySelector(".k2");
    let k3 = document.querySelector(".k3");

    let aktiv_kvadrat1 = () => {
        document.querySelector(".k1").id = "aktiv";
        k2.removeAttribute("id");
        k3.removeAttribute("id");
    }
    k1.addEventListener("click", aktiv_kvadrat1);

    let aktiv_kvadrat2 = () => {
        document.querySelector(".k2").id = "aktiv";
        k1.removeAttribute("id");
        k3.removeAttribute("id");
    }
    k2.addEventListener("click", aktiv_kvadrat2);

    let aktiv_kvadrat3 = () => {
        document.querySelector(".k3").id = "aktiv";
        k2.removeAttribute("id");
        k1.removeAttribute("id");
    }
    k3.addEventListener("click", aktiv_kvadrat3);
</script>
</body>
</html>


И он отрабатывает как нужно, НО когда кликаю, почему border каким то не понятным светом накладывается.
И это именно с button если сделать с div то все будет хорошо работать.
Ответить с цитированием