Hirdetés
- Kormányok / autós szimulátorok topikja
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Fejhallgató erősítő és DAC topik
- Milyen videókártyát?
- A Windows 11 nem akarja ránk erőltetni az AI applikációkat – vagy mégis?
- Az Enermax nagyon belehúzott a "tápozásba"
- Sony MILC fényképezőgépcsalád
- Milyen monitort vegyek?
- Pánik a memóriapiacon
- PLC programozás
-
PROHARDVER!
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
Jaja, már rémlik.

Most volt egy kis időm, kiegészítettem neked minimális plusz kóddal az előzőt, ami annyit csinál, hogy hozzátesz némi késleltetést JavaScripttel a menüelemek eltüntetéséhez, hogy elkerülhető legyen az almenük túl gyors eltűnése: így a látogatónak van egy kis plusz ideje a navigálgatáshoz.
Jelenleg 1,5 másodpercet tesz hozzá pluszban, de ezt bármikor könnyen megnövelheted/csökkentheted.
A működése egyszerű: hozzátesz egy "hovered" osztályt ahhoz a list itemhez, amely gyerekeleme fölé vitted az egeret. A CSS-kódot csak azzal egészítettem ki, hogy a "hovered" osztállyal ellátott elemekre is vonatkozzon az almenü-megjelenítés.
A CSS-kódban a /* PETE */ kommenttel jelzett kódok azok, amiket hozzátettem; na meg ott van a kommentezett, elég rövid JS-kód.http://jsfiddle.net/Sk8erPeter/96Bu8/16/
Szerintem érdemes lenne ezt beleraknod az oldalad kódjába, hogy használhatóbb legyen a navigációs menü, és ne legyen frusztráló a látogatóid számára.
Szerk.: jQuery-vel írtam meg, mert azt úgyis használod az oldaladon.
-
Sk8erPeter
nagyúr
Szívesen, hogyan oldottad meg végül?
Amúgy megnéztem az oldalt, határozottan jobb, hogy nem JavaScripttel van megoldva.
Fura volt, amikor kikapcsoltam a JavaScriptet, és szétesősebben nézett ki, így már tök korrekt.A menüre emlékeztem, hogy mintha ezen alakítgattunk volna valamit régebben, hogy JS nélkül is menjen, vagy valami kinézettel kapcsolatos CSS-buherát.

Viszont azt tényleg megcsinálhatnád valahogy, hogy legyen némi késleltetés a menüváltásban, ha máshova viszem az egérkurzort, mert ilyen vékonyka menücsík esetében nagyon könnyű "elrontani" a navigációt, és más fölé vinni az egeret, és biztos más is belefut, az meg nagyon sokat ront egy oldal összképén, ha van egy ilyen frusztráló dolog - a menü meg elég fontos része egy oldalnak (meghatározza, hogy egy felhasználó hogyan tud egyik oldalról a másikra lépegetni, így kiemelt fontosságú).
Például a Rólunk felirat almenüire szeretnék kattintani, és nagyon könnyű vagy túlzottan fölé- (a fejlécben látható logóra, ami szintén link) vagy alá- (valamelyik akciót hirdető linkre) vagy melléhúzni (pl. másik menüpontra) az egeret, és akkor máris nem tudom elérni az almenüpontokat. -
Sk8erPeter
nagyúr
Inkább én bocs, így utólag visszaolvasva kicsit túlzás, amit írtam, pedig eredetileg nem szántam ilyen oltósnak, csak kissé fáradt vagyok.
(3 óra alvás, kissé nehéz nap, ilyesmik. Sorry.
)OK, látom már a problémát, lejjebb görgettem.
(Eddig csak megnéztem gyorsan a kezdőlapot, aztán lefostam.) Igazából ott kezdődik a probléma szerintem, hogy mindezt JavaScripttel akarod megoldani, ahogy martonx már utalt erre.
Sok megoldás van divek egyenlő magasságának megoldására:
http://www.hongkiat.com/blog/css-equal-height/ (nézd a demóját)
http://matthewjamestaylor.com/blog/equal-height-columns-cross-browser-css-no-hacks
http://css-tricks.com/fluid-width-equal-height-columns/ (+demo)
http://codepen.io/micahgodbolt/pen/FgqLcA jelenlegi megoldásban ez az a kód, ami nálad csinálja a dolgot, erre voltam korábban kíváncsi, de lusta voltam megnézni a forráskódot:
function equalHeight(group) {
tallest = 0;
group.each(function() {
thisHeight = $(this).height();
if(thisHeight > tallest) {
tallest = thisHeight;
}
});
group.height(tallest);
}
$(document).ready(function() {
equalHeight($(".mid"));
});Ha a .mid class-ra raksz egy overflow: auto; tulajdonságot, akkor működni fog a jelenlegi is. De akkor ott van a görgetősáv, feltételezem, azt nem akartad korábban, azért vetetted be többek közt ezt a kódot.
Hogy most itt a .height() miért ad vissza rossz magasságot, mármint konkrétan 580px-est a 694px körüli helyett, azt most nincs agyam felfogni.
Amúgy a fölső menünél rohadt idegesítő, hogy bizonyos esetekben nem lehet eltalálni a menüpontot, pl. a Rólunk felirat föléviszem, és picit is máshova viszem a kurzort, mint az alsó sáv, akkor már rossz, "kiugrott" belőle. Erről a jelenségről az ennek a hsz.-nek a végén belinkelt cikkben olvashatsz: [link].
http://bjk5.com/post/44698559168/breaking-down-amazons-mega-dropdownSzerk.:
időközben megelőztek, ugyanazzal a linkkel, amit fentebb én is bedobtam, most láttam, hogy végül nem is küldtem el a hsz.-t, amikor megírtam, csak itthagytam a háttérben az egyik fülön, kész vagyok ma...
-
Karma
félisten
Én személy szerint üdvözlöm, hogy felvállaltad az oldal linkjét, mert így élőben is látható. Nem egy JSFiddle, mert kísérletezni nehezebb, de azért jobb mint képről és irreleváns részletekből dolgozni.
Próbáld meg azt, hogy ezt a javascriptes fost kiirtod, aztán kiegészíted a CSS-t azzal, hogy az oszlopok (mr10 class talán?) display: table-cell;, az őket befoglaló div pedig display: table; attribútumokat kapjanak. Az ötlet forrása itt, harmadik változat.
Másrészt, ha ezt az oldalt kézzel írod, akkor igazán adhatnál a dolgoknál rendes classokat, ID-ket, meg úgy alapból lehetne sokkal egyszerűbb ez a spagetti helyett...
-
Sk8erPeter
nagyúr
Hát majd remélem valakinek lesz kedve bogarászni, én biztos, hogy nem fogom keresni screenshot meg bármilyen kód nélkül, hol is kellene segíteni.

Ha segítséget kérsz, engedd meg nekünk, hogy lustábbak legyünk nálad egy fokkal.Ja, és erre: "Bocsánat, ha nem volt egyértelmű, nekem annak tűnt..."
Lehetőleg ne keltsd azt az érzetet, hogy még én vagyok a hülye, hogy nem vagyok hajlandó keresgélni, hogy mégis mi a frászt akarsz.
Írd le, illusztráld, és akkor nincs ez a tök felesleges oda-vissza kérdezgetés. Kérdezni is tudni kell. -
Sk8erPeter
nagyúr
Ez sztem inkább szerveroldali feladat, belegenerálsz az aktív menüpontba pl. egy "active" class-t, és azt mindig nyitva tartod. Vagy most nézem, a kódodban ez a "current". Az is jó.
De mondjuk ennek nem sok köze van a JavaScripthez, mivel itt a kódodban is szimplán csak HTML+CSS-kombóval oldottad meg.Pl. most egy sort JavaScript-kódot nem raktam hozzá, csupán az Akciók <li>-be beleraktam egy class="current"-et a kódod mintájára, aztán a CSS-kódhoz összesen két sort tettem hozzá, és kész is voltam vele, így az Akciók menüpont mindig nyitva van:
http://jsfiddle.net/96Bu8/11/
Egész konkrétan azt tettem hozzá újonnan, amihez kommentbe odaírtam, hogy /* ÚJ */.Ilyenre gondoltál?
A feladat tehát annyi, hogy szerveroldalon mindig az aktuális <li>-be belegenerálsz (akár sima if-else-ekkel) egy current class-t, ahogy itt is mutattam. Nyilván megoldható egyébként JavaScripttel is, de alapvetően szerveroldali feladatot minek rábízni a kliensre. Persze ha nagyon muszáj megoldani JS-ben, akkor tudunk segíteni benne.
Új hozzászólás Aktív témák
- Huawei Watch GT 3 Pro - korlátolt szépség
- Kormányok / autós szimulátorok topikja
- Építő/felújító topik
- One mobilszolgáltatások
- One otthoni szolgáltatások (TV, internet, telefon)
- Milyen hagyományos (nem okos-) telefont vegyek?
- BMW topik
- VGA kibeszélő offtopik
- Apple Watch Sport - ez is csak egy okosóra
- Call of Duty: Black Ops 7
- További aktív témák...
- Full Prémium! Gamer PC-Számítógép!Rog Maximus XII! I9 10850K / RTX 3080 Suprim / 32GB DDR4 / 2TB SSD
- MSI Pro mp273qw e2
- Dell Latitude 5330 - 13,3" touch, i5-1245U, 16GB RAM, SSD, EU bill., jó akku, számla, garancia
- Asztali PC , i7 6700 , RTX 2060 , 16GB DDR4 , 512GB SSD
- Dell Latitude 5430 - i5-1245U, 16GB RAM, 512GB SSD, jó akku számla, garancia
- 155 - Lenovo LOQ (15IRH8) - Intel Core i5-13505H, RTX 4060
- iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3831
- BESZÁMÍTÁS! Asus H370 i7 8700 16GB DDR4 512GB SSD RX 5600 XT 6GB Zalman S2 TG Cooler Master 650W
- GYÖNYÖRŰ iPhone 13 Mini 128GB Pink -1 ÉV GARANCIA -Kártyafüggetlen, MS3822
- Xiaomi Redmi A3 64GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi

(3 óra alvás, kissé nehéz nap, ilyesmik. Sorry.
)



