Как обрабатывать по клику динамически созданные элементы?
Здравствуйте, подскажите пожалуйста в чем ошибка не получается обработать событие клика по созданным элементам.
var audio;
var on = "Включить аудио";
$("#audio").text(on);
var list =[];
$("#audio").click(function(){
if($(this).text() == on){
//включаем плеер и запускаем аудио фай, сообщающий что плеер включен
audio = new Audio("/audio/audio-on.mp3");
audio.play();
$(this).text('Выключить аудио');
//получаем список аудиофайлов
$.getJSON("playlist", function(data){
$(".player").html(""); //очищаем список
$.each(data, function(key, val){
list = $(".player").append('' + val + '');
});
});
}else{ // выключаем плеер
$(".my-new-list").remove();
if(audio != null){
audio.pause();
}
audio = new Audio("/audio/audio-off.mp3"); //Проиграем звук что плеер отключен
audio.play();
$(this).text(on);
}
});
// эта функция не работает
list.click(function(){
audio.pause();
audio = new Audio("/audio/" + this.text());
audio.play();
});
Нужно чтоб по выбраному элементу проигрывался соответствующий аудиофайл. Когда прописываю элементы напрямую в html странице, то все нормально работает.
В чем ошибка?
Все сделал, вот работающий код, вторую функцию удалил, обработку сделал в первой.
var audio;
var on = "Включить аудио";
$("#audio").text(on);
$("#audio").click(function(){
if($(this).text() == on){
//включаем плеер
audio = new Audio("/audio/audio-on.mp3");
audio.play();
$(this).text('Выключить аудио');
$.getJSON("playlist", function(data){
$(".player").html(""); //очищаем список
$.each(data, function(key, val){
$(".player").append("" + val + "");
});
$(".my-new-list").on("click", function(){
audio.pause();
audio = new Audio("/audio/" + $(this).text());
audio.play();
});
iBird Rose: я в javascript, плохо разбираюсь, сейчас запомню.
Заработало, но не так как нужно- выбирается текст из div'ов, которые на главной странице, запрос на сервер уходит site.ru/player/главнаяосайтеконтакты
Что-то в функции выше нахимичил не так
Уточню вопрос. Как обрабатывать "отдельно, выбранный элемент"не выбираются нужные файлы, запрос уходит site.ru/audio/index.mp3main.mp301.mp3
Надо чтобы отдельно на каждый файл.