2013-08-01 2 views
2

Я хочу внедрить систему радио-типа на месте, которое я создаю. Проблема в том, что пользователь играет музыку, а затем просматривает другую часть сайта, музыка останавливается. Мне было интересно, есть ли способ сделать музыку на нескольких страницах без использования ajax? Я знаю, что могу использовать Ajax, а затем просто перезагружать каждую страницу с помощью вызова Ajax, чтобы получить страницу, проблема в том, что страницы не смогут быть помечены в закладки.Воспроизведение мультимедиа на нескольких веб-страницах

Так или иначе, или мне нужно будет использовать ajax, чтобы это работало.

+0

Возможно, вы сохранили положение аудио в переменной cookie или сессии. –

+1

Единственной альтернативой ajax будет использование фреймов – JSON

+0

@remyabel - это создаст пробелы в звуке, и в качестве «радиосистемы» я бы предположил, что ее трансляция так перезагружает, что она будет размещаться в текущем месте в трансляции без использования JavaScript/отслеживание файлов cookie. – JSON

ответ

0

Лучшее решение остается AJAX точно так же, как вы планировали. А также, как вы планировали, история браузера (и закладка) не будет работать правильно, если вы не используете history.js. Я дам вам прочитать больше от другого поста: How to "bookmark" page or content fetched using AJAX? содержание неправдоподобно-используя-Аякса

Редактировать, чтобы помочь реализации AJAX: Не видя код, это трудно сказать, если это сработает, но что-то подобное в этот самый общий сценарий может превратить любой веб-сайт от «обычных» Аяксу отогнать JQuery:

$('body').on('click','a',ajaxContentReplace); 
$('body').on('submit','form',ajaxContentReplace); 
function ajaxContentReplace(){ 
    if($(this).is('form'){ 
     // Will send form data in POST and retrieve the html in #container to put it in #container. 
     $('#container').load($(this).prop('action')+' #container',$(this).serializeArray); 
    }else{ 
     // Will retrieve the hole page and put the content of #container in #container of the current page. 
     $('#container').load($(this).prop('href')+' #container'); 
    } 
} 

Это только быстрое решение, которое работает на некоторых основных веб-сайтов, он не может делать все, что вам нужно, но по-прежнему начало.

Редактировать: Как я уже указывал в комментариях к вопросу, популярные радиостанции используют всплывающее окно для воспроизведения радиопередач, таким образом пользователи могут покинуть свой сайт и все еще слушать радио. Это также очень простая реализация.

+0

Это лучшее решение, но оно не отвечает на его вопрос. На самом деле он конкретно заявляет, что не хочет использовать ajax. – JSON

+1

Он утверждает, что не хочет использовать AJAX из-за проблемы с закладками ... Я даю ему понять, что это можно решить. – Salketer

+0

Спасибо, я догадываюсь, что просто закончу использование ajax, чтобы заставить его работать и использовать информацию из ссылки «Salketer», предоставленной для закладки. Плюс всплывающее окно просто не годится, хорошая идея, но просто не будет работать для того, что я хочу делать. – Wes

Смежные вопросы