Перейти к контенту

Обновление страницы.


Рекомендуемые сообщения

У меня на форуме установлен музыкальный мод. Смысл его в том, что при заходе в определённый форум звучит музыкальная тема, соответствующая форуму, ну в лесной зоне - пение птиц, в океанической - играет шум волн. Когда пользователь переходит между форумами, то всё - отлично, но когда переходит внутри одного форума по темам, получается следующий эффект. Поскольку с обновлением странице каждый раз заново загружается медиа-плейер, то каждый раз музыка начинает играть заново, что очень раздражает, особенно когда идёт быстрое перемещение. Нужно, чтобы при обновлении страницы медиаплейер продолжал играть ту же музыку. Для этого его можно поместить в отдельную страницу, которая открывалась бы при открытии форума. Проблема в том, как передать в это же уже открытое окошко данные о том, что музыка изменилась, а не открыть новое? Кто-нибудь знает?
Ссылка на комментарий
Поделиться на других сайтах

Делал такие штуки на джаваскрипт. Довольно просто.

Временные переменные сохраняются в куках или в объекте window.name.

Каждому разделу присваивается свое значение ключа.

При открытии страницы считывается значение ключа из куков и сверяется с ключем страницы.

Если ключ совпал - ничего не происходит, плеер продолжает играть.

Если ключ не совпал - плееру отдается команда запуска другой мелодии, а ключ перезаписывается на новый.

 

Если делать на пхп, наверное еще проще будет; значение ключа, привязанное к сессии, сохранять в поле таблицы сессий.

Ссылка на комментарий
Поделиться на других сайтах

Идея хорошая. Но в твоём способе плейер перезагрузится с открытием новой страницы, т.к. его код вписан в страницу, и если даже ключ совпал, то плеер начнёт играть заново.

 

Вот собственно код

<script type="text/javascript" src="jscripts/swfobject.js"></script>

<div id="container">Ошибка загрузки музыки</div>

<script type="text/javascript">

var so = new SWFObject('mediaplayer.swf','mpl','32','32','7');

so.addParam('allowscriptaccess','always');

so.addParam('allowfullscreen','false');

so.addVariable('width','32');

so.addVariable('height','32');

so.addVariable('file','".$music_url.$music_file."');

so.addVariable('repeat','true');

so.addVariable('autostart','true');

so.write('container');

</script>

Изменено пользователем zapretnyii_plod
Ссылка на комментарий
Поделиться на других сайтах

Можно ухищряться, например делать структуру HTML с фреймами, в одном будет идти смена страниц форума, в другом играть музыка. Но всё равно не просто будет обрабатывать, открывать ли страницу с фреймами или без них, на такой махине будет сложно реализовать, метод скорей для хомяков.
Ссылка на комментарий
Поделиться на других сайтах

Да, Sannis, спс за подсказку, я попробывал с фреймами, но при всех своих достоинствах их недостатки куда больше перевешивали - это проблема адресной строки и многое другое. Короче, сделал всё в отдельном окне.

 

Кому интересно, вот кот:

	  <script type="text/javascript">
  myWin= open("", "displayWindow",
  "width=200,height=200,status=yes");
  myWin.document.open();
  myWin.document.location = "yourfile.php";
  myWin.document.close();
  </script>

 

В yourfile.php то, что будет выводится в том отдельном окне.

Изменено пользователем zapretnyii_plod
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.