Ответы пользователя по тегу HTML
  • Как автоматически проигрывать музыку на сайте (несколько разный mp3-файлов)?

    max_shane
    @max_shane
    Javascript / Node.js dev
    Шаг 1. Создать массив с адресами файлов.
    Шаг 2. Написать функцию возвращающую рандомное число от 0 до массивТреков.length-1
    Шаг 3. Написать функцию вызывающую API браузера для воспроизведения аудио файлов с файлом из массива и подставлять в нее динамически сгенерированное число из рандомайзера.
    Шаг 4. Написать функцию определяющую окончание воспроизведения файла (используя все тот же браузерный API) и порождающую некое событие, означающее конец трека.
    Шаг 5. Повесить eventListener на страницу и засунуть внутрь него функцию которая будет вызываться всякий раз когда будет происходить событие из функции в предыдущем пункте. Эта функция будет вызывать функцию проигрывания файла каждый раз когда будет срабатывать событие.
    Шаг 6. Вызывать функцию воспроизведения файла при событии window.onload (когда страница сайта загрузилась).
    Ответ написан
    Комментировать
  • Почему при нажатии кнопки переносится на другую страницу?

    max_shane
    @max_shane
    Javascript / Node.js dev
    Может быть потому, что по-умолчанию при обращении к URL в action вызывается метод GET?
    И на сервере при этом нет обработчика при запросе GET /action_page.php.

    Если у вас на сервере есть маршрут POST /action_page.php, то и метод отправки запроса должен быть POST.
    В любом случае в элементе form рекомендую явно указывать метод:

    <form action="action_page.php" method="post">
    или
    <form action="action_page.php" method="get">
    Ответ написан
    Комментировать
  • Как сделать, чтобы тень применялась по контору?

    max_shane
    @max_shane
    Javascript / Node.js dev
    Наверное надо сделать svg фигуру и к ней применить наложение изображения. А потом к фигуре уже сделать тень.
    Ответ написан
    Комментировать
  • Как отправить данные из того div, в котором нажата кнопка?

    max_shane
    @max_shane
    Javascript / Node.js dev
    Странно, что ты сам не догадался, вроде ты знаешь все то, что нужно чтобы это сделать.
    Ты должен повесить обработчик события 'onclick' (addEventListener('click', function)) на тот блок где лежат эти дивы.
    Далее ты проверяешь в функции обработчике, если (event.target.tagName == 'DIV') то
    event.target.getElementsByTagName('input')[0].value - это и будет значение которое ты хочешь получить.
    Чтобы отсечь остальные дивы по котором может сработать клик, добавь тогда нужным дивам отдельный класс или атрибут data-* и проверяй обработчик не по дивам а по элементам с этим атрибутом или с этим классом, только не забывай, что когда ищешь элементы по классу или атрибуту, этот метод будет возвращать массив.
    И да, в обработчик не забудь поставить stopPropagation(), чтобы событие не срабатывало дальше на родительских элементах.
    Ответ написан
    2 комментария
  • Как делать http запросы через html формы?

    max_shane
    @max_shane
    Javascript / Node.js dev
    В том как сделать XMLHttpRequest вы разберетесь за 15 минут максимум. Если освоили Java...
    Там зато уже можно и blob-объекты и json отправлять.
    Ответ написан
    Комментировать
  • Почему на главной в моб версии меню работает нормально, а перейду я на страницу контактов, то уже не нормально работает?

    max_shane
    @max_shane
    Javascript / Node.js dev
    Тут вообще верстка сбита. Нужно пересмотреть код верстки всего выезжающего меню и таба заново.
    Ответ написан
    Комментировать
  • Как временно подсветить якорную ссылку?

    max_shane
    @max_shane
    Javascript / Node.js dev
    Вот простое решение этой задачи:

    Код должен в итоге оказаться на каждой странице где предполагается чтобы ссылки подсвечивались при переходе:

    window.onload = function () {
    	let url = window.location.href.split('#');
    	let link_id = url[url.length-1];
    	if(document.getElementById(link_id)) {
    		document.getElementById(link_id).classList.add('active-link');
    		setTimeout( () => document.getElementById(link_id).classList.remove('active-link'), 10000)
    	}
    
    }


    .active-link {
    color: red; 
    /*
    тут любые стили активной ссылки и транзишны которые ты хочешь
    */
    }
    Ответ написан
    Комментировать