#1
7 марта 2016 в 16:23
Подскажите пожалуйста, как можно сделать блок с виджетом, в который можно будет вставить аудиоплеер, чтобы музыка играющая в нём не прерывалась при навигации по сайту. Местоположение виджета в принципе значения не имеет, например сбоку (справа, или слева). Искал по сайту, но ничего не нашёл.
#2
7 марта 2016 в 18:00
по моему, что бы музыка не прерывалась, не плеер должен быть на аяксе, а весь остальной контент должен подгружаться на аяксе. виджетом не обойтись.
самое простое делать что то с примерением onclick="window.open(. у меня так радио плеер. Там по проще, потому что радиоплееру не нужно работать с базой
самое простое делать что то с примерением onclick="window.open(. у меня так радио плеер. Там по проще, потому что радиоплееру не нужно работать с базой
#3
7 марта 2016 в 18:36
именно, у нас тут таким занимался Sjen, у него можно еще что то найтине плеер должен быть на аяксе
Сегодня в 14:18
#4
7 марта 2016 в 18:39
ну если контент подгружается не на аяксе, то даже если плеер запомнит на чем остановились и при смене страницы продолжит с того же места, прерывание — будет.
#5
7 марта 2016 в 21:11
Нил™, вы имеете ввиду открытие в новом окне?
#7
9 марта 2016 в 14:24
Raiden,
есть такая технология pjax, с ее помощью можно легко это сделать
скачать можешь тут. там же есть документация
подключаешь библиотеку и пишешь что-то вроде
создаешь контейнер с классом content_row_pjax из которого будем обрабатывать ссылки и куда будем грузть контент
а сам код плеера выводишь отдельно, за пределами контейнер.
вроде ничего не забыл. По крайней мере у меня работал))
также советую изучить локальные хранилища чтобы плеер сразу в нескольких окнах не играл
есть такая технология pjax, с ее помощью можно легко это сделать
скачать можешь тут. там же есть документация
подключаешь библиотеку и пишешь что-то вроде
<script> $.pjax.defaults.timeout = 10000; $(document).ready(function(){ $(document).pjax(' a:not(.ajax-modal, [href*=add], [href*=auth], [href*=register])', '.content_row_pjax'); /*чтобы не реагировал на модальные окна, при добавлении контента(лучше убрать)*/ $('body').on('click', 'a.ajax-modal', function(e){ /* чтобы модальные окна в подгруженном контенте работали */ $(this).attr('rel', 'gal').nyroModal(); e.preventDefault(); }); var pjax = $('.content_row_pjax'); var loading = $('<div class="loading"></div>'); /* при загрузке накладываем, стили отдельо напишешь */ $(document).on('pjax:beforeSend', function() { /* перед отправкой */ pjax.prepend(loading); }); $(document).on('pjax:popstate', function() { /* вперед назад */ pjax.find('.loading').remove(); }); $(document).on('pjax:end', function() { /* выводим контент */ /* тут какой-то код который хочешь чтобы выполнился по окончанию загрузки */ pjax.find('.loading').remove(); }); }); </script>
а сам код плеера выводишь отдельно, за пределами контейнер.
вроде ничего не забыл. По крайней мере у меня работал))
также советую изучить локальные хранилища чтобы плеер сразу в нескольких окнах не играл