Audio в DOM
Подскажите, пожалуйста, как получить доступ к src в source.
<html> <body> <audio name="music1"> <source src="http://sait-raznoe.do.am/pr/4/music1.mp3" name="music2"> </audio> <script> alert(1); alert(document.music1.music2.src); alert(document.audio.source.src); // И т.д. </script> 1 </body> </html> |
А по человечески это никак нельзя было сделать?
<!DOCTYPE html>
<html>
<body>
<audio id="music1">
<source src="http://sait-raznoe.do.am/pr/4/music1.mp3" name="music2">
</audio>
<script>
var m = document.getElementById('music1'),
sources = m.getElementsByTagName('source');
alert(sources[0].src);
</script>
</body>
</html>
|
Спасибо. Просто я в DOM и getElementById плохо разбираюсь.
|
И ещё такой вопрос. Я с помощью JS меняю ссылку к музыке, но сама музыка не меняется. Вот сами посмотрите (в хроме).
|
Что бы загрузить другой файл, нужно вызвать метод - load('file.name');
|
А можно в примерах?
|
var a = new Audio();
a.src = 'mymusic.mp3';
a.load();
a.addEvenetListener('canplaythrough', function(){
a.play();
}, false);
Немного ошибся, всё таки надо поменять просто src, а потом вызвать load. |
Эм... Всё равно не понял. Дайте ссылку на статейку.
|
|
Всё. Понял. Сделал так:
a.src = //новый путь; a.load(); a.play(); И напоследок ещё 2 вопроса :) Как поставить автоповтор и как удалить (с возможностью восстановить) музыку (проигрываю несуществующий файл, но хочется более изящное решение). |
Авто повтор.
var audio = new Audio();
audio.src = 'http://dl.dropbox.com/u/6001712/demo/alien/sound/warningwarheadpathblocked2.ogg';
audio.play();
audio.onended = function() {audio.play();};
Как удалить? Возможно стоит просто остановить. audio.pause(); audio.currentTime = 0; |
Цитата:
|
Хотя ещё нет :) До окончания загрузки музыка не играет (что естественно), но в теге audio это как-то обходилось. А ещё "onended" в хроме неработает.
|
Цитата:
<audio id="audio"></audio>
<script>
var audio = document.getElementById('audio');
audio.src = 'http://dl.dropbox.com/u/6001712/aimp/Axwell%20%26%20Sebastian%20Ingrosso%20-%20Together.ogg';
audio.play();
</script>
Цитата:
audio.addEventListener('ended', function(){
audio.play();
}, false);
|
Ну я туплю похоже :) Вообщем, всё работает, всем спасибо, закрывайте тему.
|
| Часовой пояс GMT +3, время: 12:57. |