Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Tło dźwiękowe strony
Forum PHP.pl > Forum > Po stronie przeglądarki
Czadus
Witam. Tematów tego typu spotkałem wiele, nie tylko na tym forum, ale również na google, forach itp. Niestety nie znalazłem odpowiedzi. Szukam sposobu, jeżeli takowy istnieje w ogóle, aby dźwięk, jaki odtwarza flashowy player, mimo przeładowania nie zaczynał się od początku, ale nieprzerwanie trwał. Pomijam tutaj już popupy, pomijam również frame (nie jestem w żaden sposób ich zwolennikiem). Uprzedzając krytykę wobec mnie za wstawienie tła dźwiękowego na stronie, nadmieniam, że jest to strona stworzona na zamówienie, i to klient zarzyczył sobie taki "bajer". Zatem moje pytanie brzmi, czy na stronie www.morphingorchestra.org, można stworzyć tło, aby mimo przeładowania strony nieprzerwanie działało?? Spodziewam się negatywnej odpowiedzi, jednak mam tę nikłą nadzieję, że o jakimś rozwiązaniu nie wiem.
wookieb
Nie ma takiej możliwe. Dzwiek moze sie zaczynac od ostatnio skonczonego momentu.
Jezeli cala strona jest zrobiona we flashu to dzwiek jak najbardziej moze byc caly czas.
sowiq
Masz taką możliwość i podam Ci 2 sposoby:
1) Przeładowywanie strony za pomocą AJAX'a (a raczej tylko niektórych elementów tak, żeby element z animacją pozostał nieruszony)
2) Wszystkie linki traktujesz JS'em. Dajesz im zdarzenie onclick="idzDoAdresu(this.href); return false;" I robisz coś w stylu:
Kod
function idzDoAdresu(adres){
   document.location.href = adres + "?czas=" + pobierzAktualnyCzasPlayera();
}
Funkcja pobierzAktualnyCzasPlayera() - wiadomo do czego służy. Możesz ją zbudować np. odliczając sekundy od wystartowania animacji flash (czyli dźwięku). Wtedy po przeładowniu strony masz informację gdzie zatrzymał się poprzednio dźwięk. Startujesz go od ostatnio granej sekundy.
Kilka podpowiedzi:
sount.start()
Połączenie JS i Flash

Moim zdaniem bardziej elegancki jest sposób nr 1. Do tego muzyka będzie grała nieprzerwanie. Ale wybór należy do autora smile.gif Chciałem tylko pokazać, że taki problem można rozwiązać w miarę łatwo przynajmniej na kilka sposobów.
Czadus
Hej. Na razie wielkie dzięki, jak tylko z czegoś skorzystam, odezwę się tutaj. Żal tylko tego, że w każdym z przypadków mam dosyć gruntowne przeróbki strony.
sowiq
No właśnie nie do końca. Przy użyciu sposobu 2. nie musisz przerabiać strony. Wystarczy, że do każdego linka na stronie dodasz onclick="idzDoAdresu(this.href); return false;", załączysz do strony plik JavaScript i napiszesz 3 funkcje. W playerze Flash wystarczy zmienić jedną rzecz w ActionScript'cie. Więc roboty masz tak na prawdę na 30 minut smile.gif
wookieb
Cytat(sowiq @ 11.12.2008, 14:37:07 ) *
Więc roboty masz tak na prawdę na 30 minut smile.gif

Głupoty pleciesz. A co jeżeli strona ma jakieś dodatkowe menu i poza trescia glowna zmienia sie uklad kolumn itd?
sowiq
Cytat(wookieb @ 11.12.2008, 14:49:53 ) *
Głupoty pleciesz. A co jeżeli strona ma jakieś dodatkowe menu i poza trescia glowna zmienia sie uklad kolumn itd?

Zakładam, że widziałeś stronę, do której adres dał autor w pierwszym poście? http://www.morphingorchestra.org
Może trochę przesadziłem z tymi 30 minutami, w porywach może to zająć z godzinę. A głupotą dla mnie jest bez zastanowienia powiedzieć 'nie da się'.
Pozdrawiam.
Czadus
I w końcu stało się tak, iż stronę przerabiam pod wersję z wykorzystaniem AJAX-a. Dzięki wielkie panowie za propozycje, bo o takim rozwiązaniu w ogóle nie pomyślałem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.