Помощь по коду!!
Добрый день всем. Плохо знаю js. Но нужно сделать нечто такое:
на js есть плеер, в нём треки, напртив каждого трека кнопочка - купить. Нужно чтоб при нажатии на эту кнопочку каким-то образом бралось название именно этого трека, который напротив кнопочки и сохранялось в некую переменную и потом уже автоматически вставлялось в некую форму на сайте. Треки описаны вот так:
markup = {
listItem:'<li class="track">' +
'<span class="title"></span>' +
'<span class="duration"></span>' +
'<a href="#" class="buy not-active" target="_blank"></a>'
'</li>'
};
Функция создания списка треков вроде:
$tracks.find('.title').click(function() {
playlistAdvance($(this).parents('li').data('index'));
});
Каждому треку присваивается свой индекс. Понимаю, что вряд ли что-то понятно, но может кто поймёт) Мне кажется, немного схоже с интернет магазином - типо добавить в корзину. |
Беру название трека, ложу в переменную track и для наглядности вывожу в input
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Track</title>
</head>
<body>
<li class="track">
<span class="title">На лабутенах - Кто-то там</span>
<span class="duration"></span>
<a href="#" class="buy not-active">Купить</a>
</li>
<li class="track">
<span class="title">Smells like teen spirit - Nirvana</span>
<span class="duration"></span>
<a href="#" class="buy not-active">Купить</a>
</li>
<form action="" method="post">
<label for="">Вы покупаете трек - <input id="trackname" type="text" disabled=""></label>
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script>
$(document).ready(function() {
var track;
$('.buy').click(function(){
track = ($($(this)).siblings('.title')).text();
$('#trackname').val(track);
})
});
</script>
</body>
</html>
|
Цитата:
Может тогда ещё на один вопрос ответите? Как сделать чтоб на одной странице было несколько jQuery плееров. Как не пытался что-то намудрить результат один - если больше одного плеера, то вообще перестают работать. Скрипт вызова плеера вот:
<script type="text/javascript">
$(document).ready(function(){
var description = 'Ну тут как бы наверное.. я хз чё.. просто типо может описание треков или ещё чё. вот';
$('#player1').ttwMusicPlayer(brighton, {
autoPlay:false,
description:description,
jPlayer:{
swfPath:'assets/player/plugin/jquery-jplayer'
}
});
});
</script>
|
dron-tlt,
Мне желательно видеть HTML, но навскидку скажу, что в HTML есть какой-то тег с id="player1" Чтоб подключить второй - создаете ещё один(такой же) тег, только с любым id, к примеру id="player2" и инициализируете его как первый, в итоге даю код сразу для двух плееров, при условии что у второго id="player2"
<script type="text/javascript">
$(document).ready(function(){
var description = 'Ну тут как бы наверное.. я хз чё.. просто типо может описание треков или ещё чё. вот';
var description2 = 'тут описание для второго плеера';
$('#player1').ttwMusicPlayer(brighton, {
autoPlay:false,
description:description,
jPlayer:{
swfPath:'assets/player/plugin/jquery-jplayer'
}
});
$('#player2').ttwMusicPlayer(brighton, {
autoPlay:false,
description:description2,
jPlayer:{
swfPath:'assets/player/plugin/jquery-jplayer'
}
});
});
</script>
|
m1lk1way,
Я так и делал, пробовал различные вариации - результат один: или плееры вообще не появляются, или просто перестают работать - не регагируют ни на что, ощущение, будто они конфликтуют между собой. В консоле браузера пишутся какие-то ошибки скрипта ![]() я думаю, может просто все служебные файлы плеера дублировать и назвать по другому и пустить как новый скрипт? больше не вижу решений.. Могу скинуть исходники, если надо. Повторюсь, сайт тут: lsb.pe.hu |
вот пример страницы с сайта разработчика плеера, которым вы пользуетесь. На этой странице сразу 3 плеера.
|
| Часовой пояс GMT +3, время: 07:17. |