Menü-vezérelte színezés

f.sor képe

Sziasztok!
Menü-vezérelte színezést kellene megvalósítanom. Vagyis, ha a főmenü elemeire kattintok, akkor meg kellene változzon a háttérkép, a blokkok színe stb...

Mit használok: Drupal 7.12, sub-menüként a "menu_block" modult, a főmenüben a "menu_icons" modult használom (mert képeket kell megjelnítenem a menük helyett), sminként a pixture_reloaded-t.

Nem ismerem a drupal lelkivilágát ahhoz, hogy tudjam, hogyan tárolható el az, hogy melyik menüt választották ki utoljára, hogyan lehetne a css-ben ezt az értéket megkapni. Hét menüelem, hét színkészlet, hét háttérkép - ezt kellene megvalósítanom. (css-ben is tudok php kódot futtatni)

Próbálkoztam a "menu_attributes" modullal. Ezzel lehet ugyan a menüpontokhoz attributumot beállítani. De nem tudom a css-ben utolérni ezeket a tulajdonságokat.

Köszönöm, már azt is, hogy egyáltalán elolvastad.
ati

Drupal verzió: 
Fórum: 
segi képe

csak tisztán css, ahhoz hogy dinamikusan cserélődjenek a színek és a képek, mindenképp szükséges valamennyi javascript.
Két lehetőséget látok, vagy a menüpontól függően az oldal elemeinek valamely tulajdonságát mondjuk az osztályát cserélem, attól függően melyik menüpont az aktív, vagy a css-t magába a js fájlba módosítom.
Ehhez mindenképp jQuery-t ajánlok!

2
0

Drupal developer at Cheppers

eMeLA képe

Huncut a kérdésfelvetés, mert nem az az érdekes, hogy melyik menüpontra kattintasz, hanem, hogy mi töltődik be (szerintem). És annak függvényében, hogy mi töltődött be, kell más kinézet az oldalnak. Ha tévedek javíts ki.

Ha jól gondolom, akkor a template_preprocess_html kell neked.
Itt a body class-hoz hozzá tudsz oldalanként adni egy azonosítót pl. a nid=12 node esetén node-12. Ezután már CSS-ben tudod változtatni a grafikai elemeket.

5
0

...mit tudok: http://web.termuves.hu

f.sor képe

Köszönöm a válaszod. Hasznos volt - működőképes.

0
0
eager képe

Én ehhez a Context modult használom, de effektíve ugyanaz történik, mint eMeLA hozzászólásában.

Az általam követett módszer feltétele, hogy a "rövid webcímek" használata be legyen kapcsolva, lehesen tetszőleges URL aliasokat rendelni a tartalmakhoz.

Egy-egy menüpont gyermekeinek ugyanolyan módon kezdődő URLt adok, tehát

  • tema-uno/valami1
  • tema-uno/valami2

illetve

  • tema-due/valami1
  • tema-due/valami2
  • tema-due/valami3

utána a Context modul beállítófelületén (Context UI) beállítom az URL-t mint figyelt feltételt, tehát kérem, hogy figyelje, hogy pl. tema-uno/* -e az url alias ( a * a joker). Ugyanitt megadhatom, hogy ha ez a feltétel teljesül, akkor a beavatkozás legyen az, hogy hozzáad egy általam megadott plusz HTML osztályt a body-hoz
(legyen pl. tema-uno-oldalak).

(ahhoz, hogy ezt könnyedén kattinthasd, az Admin contrib modulnak is fenn kell lennie, úgy tudom az pakolja be a fenti beállítások elvégzéséhez szükséges szövegmezőket a Context UI felületébe.)

Utána már css-ből bármit tetszőlegesen formázhatsz, hisz minden elemnek lehet egy általános megjelenése, amit módosíthatsz arra az esetre, ha az adott kiválasztó történetesen (a) .tema-uno-oldalak class-ú ( body ) elemen belül fordul elő.

Ez a videó a Context modul használatbavételében segít:
http://mustardseedmedia.com/podcast/episode38

4
0
f.sor képe

Köszönöm - nagyon jól használható ez is (nem akart működni a context-7.x-3.0-beta2 - az újonnan megjelent D7.14-re való frissítés után működik).

0
0