ForumCała strona

Nawigacja

Aktualnie online

Gości online: 19

Użytkowników online: 0

Łącznie użytkowników: 25,400
Najnowszy użytkownik: AlojzyBartek

Logowanie

Nazwa użytkownika

Hasło



Zarejestruj się

Odzyskaj hasło

Shoutbox

Musisz zalogować się, aby móc dodać wiadomość.

Zbigniew@
17.11.2024 11:33:24
Nie ten grzeszy kto pije, ale ten, kto się nie upije.

JazOOn
16.11.2024 20:46:18
tja

Zbigniew@
15.11.2024 18:58:17
Kto pije, ten nie bije.

JazOOn
31.10.2024 20:49:47
Kto pije?

piterus
30.10.2024 19:45:48
I będziemy śpiewać: "Kiedy 20 blisko, przebadaj wszystko, przebadaj wszystko..." Pfft

Pobierz nową wersję
Pobierz podręcznik
Zobacz inne oficjalne Supporty
Statystyki supportu
PHP-Fuson PL na Facebooku

RSS

Polecamy hosting SferaHost.pl

Zobacz temat

 Drukuj temat
[EF IV] Umieszczanie menu DHTML w górnej belce
QooBooS
Witam.
Spędziłem dziś 3,5 godziny na przeszukiwaniu różnych stron, na których mógłbym znaleźć jakiś poradnik lub opis tworzenia ciekawego i prostego menu. Tak się złożyło, że trafiłem na temat o menu w DHTML, które tworzy się przy pomocy prostego kreatora wizualnego >>tu<<.
Postąpiłem według zamieszczonych tam wskazówek, a do reszty doszedłem sam:
Co konkretnie zrobiłem?
- stworzyłem menu (rzecz jasna);
- opublikowałem wymagane pliki (js w includes, a obrazki w images/menu);
- wyedytowałem plik theme.php w katalogu mojej skórki:
W function render_header($header_content) wstawiłem:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

(czyli dokleiłem linijkę odpowiedzialną za mój skrypt).
Trochę niżej odszukałem polecenia wyświetlającego menu z linkami (showsublinks) i zastąpiłem je w następujący sposób:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

zamieniłem na:
Pobierz kod źródłowy  Rozwiń Kod źródłowy


Wszystko poszło jak z płatka, lecz jest mały problem - menu jest zbyt szerokie i nie mieści się w ramce na nie przeznaczonej, a w dodatku na niektórych podstronach w ogóle się nie wyświetla. Chciałbym, aby była wyświetlana na całej długości, mniej więcej tak, jak to widać teraz.
Adres mojej strony: www.co2pl.lua.pl

Menu zostanie zmienione pod względem wyglądu, jak również reszta niedociągnięć na stronie - to dlatego, że jest ona jeszcze w trakcie przygotowań.

Czy mógłby ktoś mi pomóc z naprawieniem tego błędu? Co jest tego przyczyną? Czy to, że coś źle zrobiłem? Czy też to, że czegoś nie dopisałem? A może jest jeszcze inna przyczyna?

Z góry serdecznie dziękuję za wszelką pomoc oraz za chęci.


PW od moderatora:
  1. Zmiana nazwy tematu - Pieka 03.06 - 09:44
  2. Przeniesienie tematu - Pieka 03.06 - 09:44
  3. Zmiana nazwy tematu - piotrek199214 03.06 - 16:41

Edytowane przez piotrek199214 dnia 03.06.2008 16:55:33
 
Wścibski Gość
Dodany dnia 25.11.2024 10:29:21
Pan Kontekstualny

Postów: n^x
Data rejestracji: Zawsze

Polecamy hosting SferaHost.pl
IP: localhost  
Piotrroger
Pobierz kod źródłowy  Rozwiń Kod źródłowy


Spróbuj tak.
Edytowane przez piotrek199214 dnia 03.06.2008 16:55:47

userbar_sparta3.gif
 
http://spartabks.boo.pl
QooBooS
Pomyśleć, że tak drobna modyfikacja przy takim kodzie może tak wiele zmienić Smile Serdecznie dzięki.
Praktycznie nie można się teraz do niczego doczepić, jednak wolałbym, żeby nie było widać tego jasnego paska po bokach menu (widocznego na obrazku loga). Jeśli to zrobisz, to normalnie nie wiem, co Ci zrobię Smile
Edytowane przez piotrek199214 dnia 03.06.2008 16:55:58
 
Piotrroger
U mnie nie ma żadnego białego paska. Używam Firefox 3 i rozdzielczość 1280x1024. Na IE6 też mi się dobrze wyświetla. Zapodaj Print Screen.

edit:/ hmm... mi to wygląda jakby coś z tym kodem od menu było źle. Nie znam się na JavaScript więc nic na to niestety nie poradzę.
Edytowane przez Pieka dnia 03.06.2008 19:33:28

userbar_sparta3.gif
 
http://spartabks.boo.pl
QooBooS
Oto on:
Pobierz kod źródłowy  Rozwiń Kod źródłowy


EDIT:
Miałem podobną sytuację, lecz pasek był tuż pod tą górną częścią loga (teraz znajdowałby się nad menu). Przyczyną było źle dopasowane logo (o 1 piksel za mało), ale w tym przypadku coś musiało rozciągnąć te komórki po bokach loga. Spróbuję jutro rozciągnąć te skrawki o jeden piksel - może pomoże...
Edytowane przez piotrek199214 dnia 03.06.2008 16:56:07
 
sexyfacio
Źle podajesz ścieżkę do wywołania skryptu js.

Polecam takie rozwiązania bo w zależności na jakim poziomie będziesz.
Jeśli będziesz przeglądał stronę z katalogu głównego to ok będzie działało Twoje rozwiązanie, ale jeśli będzie uruchomiony jakiśinfusion/mod z subkatalogu to wtedy już Ci to menu nie ruszy i będzie taki bialy pasek jak pisaleś.

Proponuję takie rozwiązanie:

Pobierz kod źródłowy  Rozwiń Kod źródłowy


lub bezpośredia ścieżka do pliku js:

Pobierz kod źródłowy  Rozwiń Kod źródłowy


pozdro ;)


Poprawilem kod - za duzo slashy/Pieka
Edytowane przez Pieka dnia 03.06.2008 19:36:13
 
QooBooS
Miałem zrobić ".BASEDIR."/includes/plik.js, lecz stwierdziłem, iż nie będzie to działać (nie wiem dlaczego) - właśnie dlatego to zaniechałem... Ale skoro to będzie działać, to w takim razie wcisnę to tam...
Edytowane przez QooBooS dnia 03.06.2008 20:01:21
 
Pieka
QooBooS napisał/a:
Miałem zrobić .BASEDIR."includes/plik.js", lecz stwierdziłem, iż nie będzie to działać (nie wiem dlaczego) - właśnie dlatego to zaniechałem... Ale skoro to będzie działać, to w takim razie wcisnę to tam...

BASEDIR, INCLUDES etc. stanowia stale PHP-Fusion, wiec nie ma takiej opcji. Opis wszystkich znajdziesz w swoim readme oraz na naszej stronie pod adresem http://www.php-fu...page_id=29
Jestem jaki jestem Smile
 
www.php-fusion.pl
QooBooS
W takim razie ktoś mnie tu źle poinformował lub ja źle zrozumiałem. Otóż mam PHP Fusion 6, a zostałem poinformowany, iż jest to mniej więcej to samo co EF IV... Prawda? Jeśli tak, to dlaczego to napisałeś, Panie Administratorze? Jeśli fałsz, w takim razie muszę zmienić temat...
Chyba że źle rozumiem Twoje słowa:
BASEDIR, INCLUDES etc. stanowia stale PHP-Fusion, wiec nie ma takiej opcji.

PS: A menu działa wyśmienicie na wszystkich podstronach, ale nadal mam zastrzeżenie co do tego jasnego paska po bokach tego menu.
Edytowane przez QooBooS dnia 03.06.2008 20:12:33
 
Pieka
QooBooS napisał/a:
W takim razie ktoś mnie tu źle poinformował lub ja źle zrozumiałem. Otóż mam PHP Fusion 6, a zostałem poinformowany, iż jest to mniej więcej to samo co EF IV... Prawda? Jeśli tak, to dlaczego to napisałeś, Panie Administratorze? Jeśli fałsz, w takim razie muszę zmienić temat...
Chyba że źle rozumiem Twoje słowa:
BASEDIR, INCLUDES etc. stanowia stale PHP-Fusion, wiec nie ma takiej opcji.

Dobrze zrozumiales te czesc, ale jak widze nie rozumiesz reszty. EF jest oparty o PHP-Fusion, czyli ni mniej, ni wiecej silnik jest ten sam. W zwiazku z tym, stale rowniez sa te same, poniewaz stanowia integralna czesc silnika. Jednak na tym oraz kilku innych rzeczach koncza sie wspolne cechy i dlatego uzytkownicy EF zobowiazani sa do pisania w tym dziale i uzywania oznaczen opisanych w jego regulaminie.

Edit: Kolega poinformowal mnie przez PW, ze zle zinterpretowalem jego pytanie.
Piszac, ze "..nie ma takiej opcji" mialem na mysli to, ze nie ma mozliwosci, aby stale PHP-Fusion nie dzialaly poprawnie w roznych czesciach strony, a tym bardziej w pliku subheader.php. Inaczej to ujmujac, musza dzialac, o ile plik ma polaczenie z maincore.php. Jesli tylko ostatni warunek zostanie spelniony, to rozsadnie jest je stosowac.
Edytowane przez Pieka dnia 03.06.2008 20:22:53
Jestem jaki jestem Smile
 
www.php-fusion.pl
QooBooS
Problem rozwiązany - patrz dół tego posta

Jak rozciągnąć to menu na całą szerokość belki?
Wpis dotyczący tego menu wygląda tak:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

Jeśli będzie potrzeba, służę zawartością plików .js.

I jeszcze jedna sprawa dotycząca tego menu:
Jak zmienić język kodowania napisów w menu? Teraz, aby wpisać ń, muszę wstawiać ¶. W razie potrzeby również służę zawartością plików .js.

Strona: www.co2pl.lua.pl <-- w razie gdyby ktoś chciał zobaczyć, o co mi chodzi.

Rozwiązanie:
Co tu dużo gadać - odszedłem na chwilę od komputera i doznałem olśnienia...
Przeanalizowałem jeszcze raz opcje programu, w którym robiłem menu i znalazłem:
(zaznaczony Tryb Edycji - Edit Mode, po kliknięciu na dowolny główny obiekt w menu) W oknie Tasks znajdujemy tabelkę Global, a następnie klikamy w niej na Menu Type przy General. W oknie, w którym po dwukrotnym kliknięciu na tekst na przycisku pojawia się okno edycji tekstu (zmiana kolory czcionki, link, położenie, itd.), pojawi się Global - Menu Type. Teraz po prawej stronie okienka znajdziecie "Stretch whole menu width (Horizontal menu only)". Zaznaczamy to i pod tym aktywuje się pole Width, w którym ustawiamy 100% (jeśli chcemy mieć menu na całej szerokości). Teraz wystarczy ponownie wygenerować kod i wkleić go w miejsce starego w pliku theme.php (oczywiście nie zapomnijcie o zmianie wszystkich " na ' lub na \" !)

lub o wiele szybszy sposób:

W kodzie menu szukamy pierwszej linijki pod <!--. U mnie wyglądała ona tak:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

Wystarczy zmienić pogrubioną wartość na 100% i menu będzie rozciągnięte na całej szerokości ;)
Edytowane przez QooBooS dnia 03.06.2008 23:32:39
 
JahuKA
Stworzyłem menu w DHTML w górnej belce,
opublikowałem pliki js i skopiowałem do katalogu INCLUDES a obrazki do /themes/fusion5/images/menu.

Wyrzuciłem kod z theme.php odp. za wyswietlanie starej/standardowej belki
Pobierz kod źródłowy  Rozwiń Kod źródłowy


i wstawilem w to miejsce kod wygenerowany przez dhtml

Pobierz kod źródłowy  Rozwiń Kod źródłowy

To jest cały plik thehe.php w skórce fusion5 .
Wciąż pojawia mi się błąd w składni gdy odpalam strone.
Pobierz kod źródłowy  Rozwiń Kod źródłowy

Gdy wracam do podwójnych ' czyli do " wszystko jest ok tzn. nie ma komunikatów o błędzie ale menu nie jest widoczne.
Co zrobić żeby w końcu menu się ukazało ?
Robie to samo co Qooboos, ale jednak coś nie tak jest.
czy muszę coś jeszcze w pliku /INCLUDES/themes_functions_include
W tym pliku jest funkcja showsublinks. Czy trzeba w nim coś dopisać lub zmodyfikowac?


Przepraszam, że piszę w miejscu dla eXtreme Fusiona ale temat juz widniał i najbardziej odpowiada mojemu problemowi z poziomym menu z dhtml.
 
Pieka
Zamien:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

na:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

oraz wszystkie wystapienia w kodzie stalych:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

na:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

poniewaz uzywasz pojedynczych apostrofow.

Poza tym, jesli wstawiasz stale PHP-Fusion to nie uzywaj po nich /, czyli masz miec:
Pobierz kod źródłowy  Rozwiń Kod źródłowy


Przejrzyj caly kod, poniewaz masz balagan. Podalem tylko przyklady, reszta nalezy do Ciebie.
Jestem jaki jestem Smile
 
www.php-fusion.pl
JahuKA
Dzięki ,poprawiam kod.B)
Nic nie pisałeś jednak o krokach które trzeba wykonać aby cieszyć się nowym menu , mam nadzieje że te które zrobiłem są ok :)


Wiadomość doklejona:
poprawiony kod pliku theme.php
Pobierz kod źródłowy  Rozwiń Kod źródłowy


Proszę o pomoc bo nie wiem co jest nie tak .
Kod w render header wydaje sie byc w porzadku, lecz teraz mam komunikaty w dalszej częsci pliku
Pobierz kod źródłowy  Rozwiń Kod źródłowy

Jaka część kodu jest odpowiedzialna za wyswietlanie menu ?


Wiadomość doklejona:
Chodzi mi o funkcję 'echo' - czy ona powinna znaleźć sie pod skryptem javy:
Pobierz kod źródłowy  Rozwiń Kod źródłowy


Edytowane przez JahuKA dnia 30.09.2008 12:48:46
 
Przejdź do forum:
Created by Arox Copyright (C) 2004
Copyright (C) 2004 - 2018 Ekipa PHP-Fusion.pl