Proszę o informację dlaczego po dodaniu banera FLASH na stronę w HTML przestaje on automatycznie działać ?
Z góry dzięki za wszelkie informacje.
Wczoraj zbiła mi się kryształowa kula do zdalnego debugowania kodu, czy byłbyś w stanie pokazać kod jakim umieszczasz Flasha na stronie? Opowiedz też co to znaczy, że "nie działa" - pojawia się tekst alternatywny, a może pole z jednolitym kolorem, a przy kliknięciu prawym myszy na tym pliku pojawia się menu kontekstowe z tekstem, że plik niewczytany. Byłoby miło także jakbyś mógł podrzucić plik Flash, ale zakładam, że to tajny projekt, więc pewnie go nie pokażesz. Sprawdź też ścieżkę. A, i pamiętaj, że na zdalnym serwerze w ścieżce DUŻE i małe litery mają znaczenie.
Tak czy tak życzę powodzenia jak zadzwonisz kiedyś np. do mechanika i powiesz mu: "Proszę o informacje dlaczego po wejściu do samochodu przestaje on działać?".
Mam nadzieję, że zrozumiałeś przekaz i następne pytania będziesz zadawać mądrzej :)
Przekaz jak najbardziej zrozumiany :)
Nie jest to żaden tajny projekt ;p
Kod umieszczam na stronie w następujący sposób:
<embed src="http://www.wozki-sosnowiec.pl/nowe%20promocje/index.swf" quality="high" allowscriptaccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" height="435" width="690"></embed>
Wielkość liter przy ścieżce sprawdzona i wszystko jest w porządku. W chwili zaakceptowania kodu na stronie baner jest widoczny natomiast zdjęcia jemu przyporządkowane z pliku .xml już nie :/
jasna cholera, co to jest?
http://prntscr.com/8lp3a/direct
ile tych <body>
i <html>
? Coś ty skleił 10 plików html w jeden?
Chciałem, ale na szybko nie potrafiłem odnaleźć tego elementu na stronie.
Pokaż mi gdzie on się wyświetla oraz gdzie podajesz mu z którego pliku xml powinien skorzystać.
Ale generalnie wygląda to na problem nie z zamontowaniem flasha na stronie, tylko z samym kodem wewnątrz flasha.
Do strony na tabelach i <embed>
się łaskawie nie przyczepię..
Ale generalnie - chaos Panie, chaos..
Kurcze załamałeś mnie :/
Dany kod, który zamieściłeś to boczne menu, które zostało dodane za pomocą oprogramowania kqs na sklepie i które podlinkowałem.
To raczej nie ma nic wspólnego ze stroną główną przynajmniej tak mi się wydaje...
Z samym plikiem .swf nie powinno być żadnego problemu po wklejeniu w przeglądarkę działa bez zarzutu co świadczy również o tym, że .xml, z którego pobiera dane jest ok. Cholerny problem powstaje w chwili gdy umieszczam go w kodzie HTML strony --> baner się wyświetla, a zdjęcia w nim już nie - jakby nagle zaczął gubić ścieżkę do pliku .xml FUCK FUCK FUCK !!! :(((
Tak to jest jak się bierze człowiek za coś czego praktycznie w ogóle nie rozumie :(
Stara się i stara, a tu jedno wielkie g.....
Ścieżkę do pliku .xml podaje w pliku .fla nie bezpośrednio w HTML.
podaj ścieżkę do xml, bo nie chce mi się szukać trialów dekomplilatorów swf
Pełna wartość pliku .fla ścieżka do "baza.xml" zaraz na samym początku:
var czas:Timer = new Timer(2000);
czas.start();
var ladujDane:URLLoader = new URLLoader();
var adresDane:URLRequest = new URLRequest("baza.xml");
ladujDane.load(adresDane);
var dane:XML;
var adresObraz:URLRequest;
var ladujObraz:Loader = new Loader();
ladujDane.addEventListener(Event.COMPLETE, pokazDane);
function pokazDane(zdarzenie:Event): void {
dane = new XML(ladujDane.data);
ilosc = dane.baneropis[0]
zdjecia();
}
var ilosc:Number;
var i:Number = 1;
function zdjecia(): void {
var adres:String = dane.baneropis[i].@zdjecie;
adresObraz = new URLRequest(adres);
ladujObraz.load(adresObraz);
if(i == 1){
poprzednie_btn.mouseEnabled = false;
} else {
poprzednie_btn.mouseEnabled = true;
}
if (i == ilosc){
nastepne_btn.mouseEnabled = false;
i = 0;
} else {
nastepne_btn.mouseEnabled = true;
}
}
nastepne_btn.addEventListener(MouseEvent.CLICK, dalejZdjecie);
function dalejZdjecie(myszka:MouseEvent): void {
i++;
zdjecia();
}
poprzednie_btn.addEventListener(MouseEvent.CLICK, cofajZdjecie);
function cofajZdjecie(myszka:MouseEvent): void {
if(i == 0){
i = ilosc;
}
i--;
zdjecia();
}
czas.addEventListener(TimerEvent.TIMER, automat);
function automat(zdarzenie:TimerEvent): void {
i++;
zdjecia();
}
ladujObraz.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, ladowanie);
function ladowanie(zdarzenie:ProgressEvent): void {
czas.stop();
}
ladujObraz.contentLoaderInfo.addEventListener(Event.COMPLETE, zaladowano);
function zaladowano(zdarzenie:Event): void {
pojemnik_mc.addChild(ladujObraz);
czas.start();
}
Ścieżki w plikach ładowanych we Flashu działają z tego co pamiętam relatywnie do domeny, nie do pliku *.swf (czyli działają tak jak htmlowe <img>
, nie tak jak ścieżki w css, które są relatywne do pliku *.css).
A więc rozwiązaniem Twojego problemu będzie zmienić ścieżkę na:
/nowe%20promocje/baza.xml
Obecnie pliki związane z banerem przetrzymuje tutaj:
ftp://www.wozki-sosnowiec.pl/public_html/flash/
więc do każdego z odnośników czyli pliku .xml .swf oraz wszystkich zdjęć w "bazie.xml" dodałem "/flash/..." pliki obecnie wyglądają następująco wszystko jest poprawnie, a dalej nie działa :/
plik .xml:
<baner>
<baneropis>5</baneropis>
<baneropis zdjecie="/flash/01.png"></baneropis>
<baneropis zdjecie="/flash/02.png"></baneropis>
<baneropis zdjecie="/flash/03.png"></baneropis>
<baneropis zdjecie="/flash/04.png"></baneropis>
<baneropis zdjecie="/flash/05.png"></baneropis>
</baner>
plik .fla:
var czas:Timer = new Timer(2000);
czas.start();
var ladujDane:URLLoader = new URLLoader();
var adresDane:URLRequest = new URLRequest("/flash/baza.xml ");
ladujDane.load(adresDane);
var dane:XML;
var adresObraz:URLRequest;
var ladujObraz:Loader = new Loader();
ladujDane.addEventListener(Event.COMPLETE, pokazDane);
function pokazDane(zdarzenie:Event): void {
dane = new XML(ladujDane.data);
ilosc = dane.baneropis[0]
zdjecia();
}
var ilosc:Number;
var i:Number = 1;
function zdjecia(): void {
var adres:String = dane.baneropis[i].@zdjecie;
adresObraz = new URLRequest(adres);
ladujObraz.load(adresObraz);
if(i == 1){
poprzednie_btn.mouseEnabled = false;
} else {
poprzednie_btn.mouseEnabled = true;
}
if (i == ilosc){
nastepne_btn.mouseEnabled = false;
i = 0;
} else {
nastepne_btn.mouseEnabled = true;
}
}
nastepne_btn.addEventListener(MouseEvent.CLICK, dalejZdjecie);
function dalejZdjecie(myszka:MouseEvent): void {
i++;
zdjecia();
}
poprzednie_btn.addEventListener(MouseEvent.CLICK, cofajZdjecie);
function cofajZdjecie(myszka:MouseEvent): void {
if(i == 0){
i = ilosc;
}
i--;
zdjecia();
}
czas.addEventListener(TimerEvent.TIMER, automat);
function automat(zdarzenie:TimerEvent): void {
i++;
zdjecia();
}
ladujObraz.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, ladowanie);
function ladowanie(zdarzenie:ProgressEvent): void {
czas.stop();
}
ladujObraz.contentLoaderInfo.addEventListener(Event.COMPLETE, zaladowano);
function zaladowano(zdarzenie:Event): void {
pojemnik_mc.addChild(ladujObraz);
czas.start();
}
kod dzięki, któremu umieszczam baner na stronie:
<embed src="http://www.wozki-sosnowiec.pl/flash/index.swf" quality="high" allowscriptaccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" height="435" width="690"></embed>
męczę się dalej jednocześnie próbując z Wami na kilku forach :( jakaś masakra :/
Wyprzedzając pytanie.
/flash/... usunąłem z plików .xml oraz .fla --> dalej to samo :/
Nie ogarniam. Najlepiej byłoby wypieprzyć tego flasha i zrobić to samo w javascripcie. To jest taka prosta rzecz, że zaprzęganie do tego flasha jest bez sensu
W js:
to by było to: ?
http://grzenio.pl/f.zip
http://grzenio.pl/f
w dalszym ciągu po dodaniu na stronę nie działa :/
Chodziło mi o w ogóle zrezygnowanie z flasha i napisanie takiej zmieniarki w JS. Albo poszukanie gotowca.