Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.04.2025, 16:12
Аватар для cupoma58
Интересующийся
Отправить личное сообщение для cupoma58 Посмотреть профиль Найти все сообщения от cupoma58
 
Регистрация: 10.11.2016
Сообщений: 25

Подсветка выбранной строки
Привет. Есть рабочий плеер, с плей-листом:
<ul class="playlist">
    <li>имя трека-1</li>
    ...
</ul>

...
trak = 0;
  
const pl = [
    'file-1.mp3',
    ...
]
// включить подсветку трека, в плей-листе
function onLith() {
    document.querySelectorAll('ul li')[trak].classList.add('active');
}

// отключить подсветку трека, в плей-листе
function offLith() {
    document.querySelectorAll('ul li')[trak].classList.remove('active');
}

// подготовка файла:
function choosTrak(trak) {  
    audio.src = 'disk:/path/to trak/' + playlist[trak];	
    audioPlay(); 
}

// пуск файла:
function audioPlay() { 	
    if (audio.paused || audio.ended) {
        onLith();	// включаем подсветку строки	
        audio.play();   
    }
    else {
        audio.pause();  
    }
}
play.addEventListener('click', audioPlay);

// по окончании: 
function endPlay() { 
    ...
    offLith();      // выключаем подсветку строки 	     
    nextTrak();     // продолжаем (закольцовываем) воспроизведение	
}
audio.addEventListener('ended', endPlay);

// выбор трека, через элемент плей-листа: 
document.querySelectorAll('.playlist li').forEach ((el, i) => {  
    el.addEventListener('click', () => {
        choosTrak(i);
    });  
});

При выборе трека, через плей-лист, подсвечивается только трек, с индексом "0".
По окончании - идёт переход на трек,с индексом "1", а не на следующий, после выбранного.
Есть-ли возможность- определить индекс выбранного, через плей-лист, трека, что-бы привязать, к нему, подсветку?

Последний раз редактировалось cupoma58, 26.04.2025 в 16:14.
Ответить с цитированием
  #2 (permalink)  
Старый 26.04.2025, 16:47
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,813

function choosTrak(*!*chosenTrackIndex*/!*) {
*!*
    trak = chosenTrackIndex;
*/!*
    audio.src = 'disk:/path/to trak/' + playlist[trak];
    audioPlay();
}
Ответить с цитированием
  #3 (permalink)  
Старый 26.04.2025, 18:36
Аватар для cupoma58
Интересующийся
Отправить личное сообщение для cupoma58 Посмотреть профиль Найти все сообщения от cupoma58
 
Регистрация: 10.11.2016
Сообщений: 25

Благодарю. Всё сработало.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подсветка строки при переходе по якорю Alexbelkevich jQuery 52 15.11.2020 14:55
Как передать данные в другую панель из выбранной строки таблицы. layout: 'card'. Пролетарий ExtJS 5 03.06.2015 22:53
Подсветка пункта в меню выбранной страницы grisha2217 Общие вопросы Javascript 2 25.01.2014 13:32
Подсветка строки динамической таблицы mgramin Элементы интерфейса 22 16.06.2011 13:35
Подсветка выделенной строки в таблице (row table highlight) artsage Элементы интерфейса 4 03.04.2009 06:40