Очень простой вопрос про аудио и JS
Пытаюсь подключить плейер: http://kolber.github.com/audiojs/
к такому html:
<body>
<div id="wrapper">
<h1>Заголовок</h1>
<audio preload></audio>
<ul>
<li><a href="#" data-src="1.wav">один</a></li>
<li><a href="#" data-src="2.mp3">два</a></li>
<li><a href="#" data-src="3.mp3">три</a></li>
<li><a href="#" data-src="4.mp3">четыре</a></li>
</ul>
</div>
Подключаю так:
<script src="jquery.js"></script>
<script src="audiojs/audio.js"></script>
И код:
$(function() {
// Setup the player
var a = audiojs.createAll();
// Load in a track on click
$('ul li').click(function(e) {
e.preventDefault();
$(this).addClass('playing').siblings().removeClass('playing');
audio.load($('a', this).attr('data-src'));
audio.play();
});
});
Аудио не загружается( Почему в строчке audio.load он пишет что audio = undefined Jquery знаю плохо (а может оно и не при чем). Помогите, пожалуйста, никак не могу сообразить в чем дело. |
$(function() {
// Setup the player
var audio = audiojs.createAll();
// Load in a track on click
$('ul li').click(function(e) {
e.preventDefault();
$(this).addClass('playing').siblings().removeClass('playing');
audio[0].load($('a', this).attr('data-src'));
audio[0].play();
});
});
|
потому что audio = undefined, вы видите хотя бы одну строку где вы переменной audio устанавливаете хоть какое-то значение?
|
Не вижу, но это, я так поняла что-то встроенное, во всех примерах которые я смотрела, audio нигде не определяется.
Попробовала переписать почти как devote, добавила строчку: var audio = audiojs.createAll(); var audio = a[0]; Теперь он начинает критиковать сам audio.js: a.element.pplay is not a function в 13 строчке audio.js |
Цитата:
var audio = audiojs.createAll()[0]; |
Да, внимание у меня почти на нуле:) Я конечно так делала:
var a = audiojs.createAll(); var audio = a[0]; Еще раз попробовала как у вас: audio[0].load($.... Но ответ такой же -a.element.pplay is not a function в 13 строчке audio.js Подключаю файлы тоже вроде правильно: отдельная папка для audiojs для трех файлов, все как там написано. |
<!doctype html>
<html>
<head>
<script src="http://code.jquery.com/jquery.min.js" type="text/javascript"></script>
<script src="http://kolber.github.com/audiojs/audiojs/audio.js" type="text/javascript"></script>
<script type="text/javascript">
$(function() {
// Setup the player
var audio = audiojs.createAll()[0];
// Load in a track on click
$('ul li').click(function(e) {
e.preventDefault();
$(this).addClass('playing').siblings().removeClass('playing');
audio.load($('a', this).attr('data-src'));
audio.play();
});
});
</script>
</head>
<body>
<div id="wrapper">
<h1>Заголовок</h1>
<audio preload></audio>
<ul>
<li><a href="#" data-src="http://s3.amazonaws.com/audiojs/01-dead-wrong-intro.mp3">один</a></li>
<li><a href="#" data-src="http://s3.amazonaws.com/audiojs/02-juicy-r.mp3">два</a></li>
<li><a href="#" data-src="http://s3.amazonaws.com/audiojs/03-its-all-about-the-crystalizabeths.mp3">три</a></li>
<li><a href="#" data-src="http://s3.amazonaws.com/audiojs/04-islands-is-the-limit.mp3">четыре</a></li>
</ul>
</div>
</body>
</html>
|
И у меня в песочнице все работает (наконец-то я это увидела)!!!А на компе - нет. Ладно, спасибо:)
|
я скажу почему так, это из за того что если файл сохранен локально например на рабочем столе аудио не будет воспроизводиться, такая политика браузеров:-/
|
| Часовой пояс GMT +3, время: 23:11. |