Добрый день Асам по JS !!! Cо криптами я новичок ! И нужно, поскольку столкнулся по работе... Не понимаю, что не так в коде по случ.выбору музыки, которая должна звучать фоном при открытии страницы... Выбор в switch выполняется... О чем свидетельствует отладочный - alert (x) Отдельно, вне скрипта : <audio src="https://drivemusic.me/dl/AWkaaH9xtZ...usic/2016/02/keiko-matsui-forever-forever.mp3" autoplay></audio> работает !!! А по выбору - нет ??? Помогите решить задачку, плиз... Привожу код: HTML: <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> Но, Но и но: У меня музыка при открытии страницы автоматом, то бишь autoplay срабатывает, играет. А вот как выбрать ?????
Проблема в том, что пытаетесь использовать переменную x в качестве значения атрибута src для элемента <audio>, но значение переменной не подставляется в HTML-код. Чтобы решить эту проблему, нужно создать элемент <audio> в JavaScript и задать значение атрибута src с помощью переменной x. Затем добавить элемент <audio> в DOM-дерево страницы. Пример HTML: <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); var audio = document.createElement("audio"); audio.setAttribute("src", x); audio.setAttribute("autoplay", "autoplay"); document.body.appendChild(audio); </script> </body> </html> Здесь мы создаем элемент <audio> с помощью document.createElement("audio"), задаем значение атрибута src с помощью audio.setAttribute("src", x), задаем атрибут autoplay с помощью audio.setAttribute("autoplay", "autoplay"), и добавляем элемент <audio> в конец тела документа с помощью document.body.appendChild(audio).