Задать вопрос
  • Как изменить цвет фона хедера при прокрутке?

    noder_ss
    @noder_ss
    Линуксоид-энтузиаст и SQL разработчик
    Так?:
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <div class="header"><p>Меню</p></div>
    </body>
    <style>
        .header{
            width: 100%;
            height: 80px;
            transition-duration: 1s;
            z-index: 2;
            position: fixed;
            background: rgba(0, 0, 0, 0);
        }
        body{
            min-height: 2000px;
        }
    </style>
    <script>
        let header = document.querySelector(".header")
        window.onscroll = function(){
            
    if(window.scrollY > 100){
        header.style.background = "#000"
    }
    else{
        header.style.background = "rgba(0, 0, 0, 0)" 
    }
        }
    </script>
    </html>
    Ответ написан
    4 комментария
  • Как посчитать количество гласных с помощью метода reduce?

    Vlad_IT
    @Vlad_IT Куратор тега JavaScript
    Front-end разработчик
    Так вы неправильно используете функцию reduce. Она вот так работает
    var result = arr.reduce(function(sum, val) { return sum + val; }, 0); // 0 - это стартовое значение для sum, если не указать, то возьмется значение из первого элемента массива, и он будет пропущен

    Вот так должен работать ваш код
    var s=prompt("Введите строку");// переменная для ввода строки
    function vowelsRed (s) {
       var sa=s.toLowerCase().split(''); // превращает строку в массив из символов
       var vs="аеёиоуыэюя";// строка с гласными
    
       var r = sa.reduce( (sum, val) => {
          if (vs.indexOf (val) !==-1) { 
             sum++; // добавляем в кол-во найденных гласных +1
          }
          return sum; // Возвращаем новую сумму (или старую, если гласных нет).
       }, 0); // Запускаем reduce с нулевой суммой
       return r;
    }
    var rezault=vowelsRed(s) ;// присваивание переменной значения функции
    alert ("Количество гласных: "+rezault);

    Что не понятно, спрашивайте.
    UPD: Только я бы еще добавил преобразование полученной строки в нижний реристр. вот так
    var sa=s.toLowerCase().split('');
    т.к. у вас большая А например, получается не гласная.
    Ответ написан
    5 комментариев