Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.09.2020, 12:34
Новичок на форуме
Отправить личное сообщение для MaxMaxFriend Посмотреть профиль Найти все сообщения от MaxMaxFriend
 
Регистрация: 11.09.2020
Сообщений: 7

Опять аудио! Музыка фоном, КАК ???
Добрый день Асам по JS !!!
Cо криптами я новичок ! И нужно, поскольку столкнулся по работе...
Не понимаю, что не так в коде по случ.выбору музыки, которая должна звучать фоном при открытии страницы...
Выбор в switch выполняется... О чем свидетельствует отладочный - alert (x) Отдельно, вне скрипта :
<audio src="https://drivemusic.me/dl/AWkaaH9xtZJtrs38TMfQLg/1599767898/download_music/2016/02/keiko-matsui-forever-forever.mp3" autoplay></audio>
работает !!!
А по выбору - нет ??? Помогите решить задачку, плиз...
Привожу код:

<html>
<body>
<script>
switch (Math.floor(Math.random() * 3) + 1) {// Один из 3х
case 1:
x="https://drivemusic.me/dl/AWkaaH9xtZJtrs38TMfQLg/1599767898/download_music/2016/02/keiko-matsui-forever-forever.mp3";
break;
case 2:
x="https://drivemusic.me/dl/b1Uf_3jG11wbPk6VN39aKA/1599698135/download_music/2014/06/parallels-beachflow.mp3";
break;
case 3:
x="https://drivemusic.me/dl/LYGwhcbsvxWYFthXC-ahSw/1599698369/download_music/2013/04/central-lounge-before-closing.mp3";
}
alert (x);
//<audio src=x autoplay></audio>
</script>
</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 11.09.2020, 13:53
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,756

Сейчас браузеры блокируют автовоспроизведение audio, независимо от того стоит там autoplay или программно вызывается функция play() без предварительных действий пользователя (например, по нажатию кнопки вызывается функция, которая вызывает play())

https://developer.mozilla.org/en-US/...Autoplay_guide
Ответить с цитированием
  #3 (permalink)  
Старый 11.09.2020, 15:07
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,756

Сообщение от MaxMaxFriend
<audio src=x autoplay></audio>
Это вообще какая то ерунда.
Тогда уж через document.write надо

Вот такой скрипт
<!DOCTYPE html>
<html lang="ru">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body >
<script>
switch (Math.floor(Math.random() * 3) + 1) {// Один из 3х
case 1:
x="https://drivemusic.me/dl/AWkaaH9xtZJtrs38TMfQLg/1599767898/download_music/2016/02/keiko-matsui-forever-forever.mp3";
break;
case 2:
x="https://drivemusic.me/dl/b1Uf_3jG11wbPk6VN39aKA/1599698135/download_music/2014/06/parallels-beachflow.mp3";
break;
case 3:
x="https://drivemusic.me/dl/LYGwhcbsvxWYFthXC-ahSw/1599698369/download_music/2013/04/central-lounge-before-closing.mp3";
}
document.write(`<div>${x}</div>`)
document.write(`<audio id='au' src="${x}" autoplay></audio>`)
</script>
<button id='pl'>Play</button>
<script>
document.getElementById('pl').addEventListener('click', ()=>document.getElementById('au').play())
</script>
</body>
</html>


по autoplay не срабатывает. Блокируется.
Только по действию пользователя = нажатию кнопки
Ответить с цитированием
  #4 (permalink)  
Старый 11.09.2020, 15:12
Новичок на форуме
Отправить личное сообщение для MaxMaxFriend Посмотреть профиль Найти все сообщения от MaxMaxFriend
 
Регистрация: 11.09.2020
Сообщений: 7

Что значит "...браузеры блокируют автовоспроизведение audio"
И Гугл и Яндекс у меня воспроизводит как я у же писал: "Отдельно, вне скрипта".
Запустите строку ниже даже в старом Int Explorer:
<audio src="https://drivemusic.me/dl/AWkaaH9xtZJtrs38TMfQLg/1599767898/download_music/2016/02/keiko-matsui-forever-forever.mp3" autoplay></audio>
и убедитесь, как НЕ РАБОТАЕТ !????
А вот в скрипте, УВЫ !
Ответить с цитированием
  #5 (permalink)  
Старый 11.09.2020, 15:22
Новичок на форуме
Отправить личное сообщение для MaxMaxFriend Посмотреть профиль Найти все сообщения от MaxMaxFriend
 
Регистрация: 11.09.2020
Сообщений: 7

По кнопке - уже ближе. Но это не то.... Может по одному из событий:
window.onload = function()
или
<body onload="function()">
Ответить с цитированием
  #6 (permalink)  
Старый 12.09.2020, 22:25
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,756

Сообщение от MaxMaxFriend
И Гугл и Яндекс у меня воспроизводит как я у же писал: "Отдельно, вне скрипта".
Запустите строку ниже даже в старом Int Explorer:
Я не понимаю, что такое "запустить строку".
Я знаю, как запустить на странице. Вне скрипта.

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<title>audio</title>
</head>
<body>
<audio src="https://drivemusic.me/dl/AWkaaH9xtZJtrs38TMfQLg/1599767898/download_music/2016/02/keiko-matsui-forever-forever.mp3" autoplay></audio>
</body>
</html>


Блокируется.
Ответить с цитированием
  #7 (permalink)  
Старый 14.09.2020, 06:56
Новичок на форуме
Отправить личное сообщение для MaxMaxFriend Посмотреть профиль Найти все сообщения от MaxMaxFriend
 
Регистрация: 11.09.2020
Сообщений: 7

Многоуважаемый "voraa" - Профессор форума !
"запустить строку" - имеется такая терминология... значит
выполнить код, который без среды воспроизведения (в нашем случае любого браузера, как интерпретатора языка НТТP - языка протокола гипертекст.разметок) - прото строка, "дрова", если хотите...
Набрав в простом блокноте лишь один тег:
<audio src="...."></audio>
а затем переименовав файл с ним в тип: .htm выполнить, запустить даже в Int Explorer
и без вступительных:

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<title>audio</title>
</head>
<body>

РАБОТАЕТ для тестирования- ЕЩЕ КАК !!!

Жалко, что не получил нужного ответа
Решить такой простенький пример по программному выбору музыки - смешно...
И это есть - великий и могучий Java Script ?????
Ответить с цитированием
  #8 (permalink)  
Старый 14.09.2020, 07:34
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,756

Сообщение от MaxMaxFriend
Набрав в простом блокноте лишь один тег:
<audio src="...."></audio>
а затем переименовав файл с ним в тип: .htm выполнить, запустить даже в Int Explorer
и без вступительных:

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<title>audio</title>
</head>
<body>
Но реально то так не бывает.
Реально - есть страница со всеми заголовками.
И на этой реальной странице современные браузеры (про ИЕ не знаю, давно не приходится ориентироваться на него), начиная с каких то версий стали блокировать автовоспроизведение аудио (и воспроизведение по play() без явных действий пользователя). Когда это стало происходить нам тоже пришлось бросить одну работу, т.к не могли справиться с этим.
Наверно это правильно. Представьте, что все подряд начнут ставить фоновые вопли и шумы на свои страницы без всякого предупреждения.
И мы вынуждены будем все это слушать
Ответить с цитированием
  #9 (permalink)  
Старый 14.09.2020, 08:16
Новичок на форуме
Отправить личное сообщение для MaxMaxFriend Посмотреть профиль Найти все сообщения от MaxMaxFriend
 
Регистрация: 11.09.2020
Сообщений: 7

Я к тому, что вписывать обязательные теги для воспроиз. 1-го не неужно, а то, что интерпретатор обрамляет всем необходимым - это ясно !
На счет музыки. Кому не по душе Релакс или грубее достаточно заглушить динамики на панеле задач или https://javascript.ru/forum/attachme...d=160005957 7
во вкладке страницы...

Соглашусь с одним - эта политика скорее для конфиденциального просмотра страниц (не спалиться звуками при просмотре контента !!!)

Но, Но и но: У меня музыка при открытии страницы автоматом, то бишь autoplay срабатывает, играет. А вот как выбрать ?????
Ответить с цитированием
  #10 (permalink)  
Старый 14.09.2020, 08:32
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,756

Сообщение от MaxMaxFriend
Я к тому, что вписывать обязательные теги для воспроиз. 1-го не неужно, а то, что интерпретатор обрамляет всем необходимым - это ясно !
<audio src="https://drivemusic.me/dl/AWkaaH9xtZJtrs38TMfQLg/1599767898/download_music/2016/02/keiko-matsui-forever-forever.mp3" autoplay></audio>


Играет?
Сообщение от MaxMaxFriend
Но, Но и но: У меня музыка при открытии страницы автоматом, то бишь autoplay срабатывает, играет. А вот как выбрать ?????
Приведите тут свой пример, где срабатывает автоплей

Сообщение от MaxMaxFriend
На счет музыки. Кому не по душе Релакс или грубее достаточно заглушить динамики на панеле задач или
во вкладке страницы...
Это совсем неправильно. Нельзя заставлять пользователя совершать лишние телодвижения, что бы от чего то отказаться. Пользователь должен осознанно что то сделать, что бы получить что то.
Это как устанавливать платную подписку не спрашивая согласия. Типа, если не нужно откажись. Но деньги за первоначальную установку спишем.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Открытие div блока при первом визите на сайт Nushaba Общие вопросы Javascript 28 20.12.2013 21:24
О наследовании событий, или как корректно его отменить. JCShen Events/DOM/Window 8 09.02.2010 00:00
Как сделать INPUT с красивым задним фоном? greatilya (X)HTML/CSS 15 26.11.2009 14:04
Как сделать, чтобы музыка <embed> на странице не играла только при первом посещении? Bad Request Общие вопросы Javascript 22 27.07.2009 19:44
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20