/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
[DHTML / Javascript] Menuproblemer
Fra : Mikkel Gram-Hansen


Dato : 25-07-01 03:56

Jeg roder lige nu med 2 forskellige udgaver af en DHTML menu, og er rendt
ind i problemer med dem begge...

Den første kan ses i en beta beta testversion på
http://www.gh-webdesign.dk/nn4_imagemenu/LoadMe2.html
Problemet ligger i dropdown menuen under "Download" hvor jeg har en
submenu... det ser ikke for godt ud med det ekstra menupunkt der automatisk
bliver smidt ind (i Explorer, Netscape klarer jobbet).... Hva' gør jeg galt
?
Jeg ville være morderligt ked af at måtte smide min (synes jeg selv) ret
fikse grafiske løsning ud, så jeg håber nogen kan komme med en løsning.


Nummer 2 menu er af samme type, men er centreret så den kan smides i en
midterstillet tabel.... so far so good.
Jeg har med lidt hjælp fået fusket et javascript sammen der finder midten
+/- x antal pixels, og kan derved få dropdown menuerne til at vises
forskellige steder defineret i forhold til midten af skærmen... det virker
fuldstændigt efter hensigten, men giver mig en "Stack Overflow" fejl ved
rezise i Explorer... ikke i Netscape.
Denne menu kan ses i en beta beta beta testversion på
http://www.gh-webdesign.dk/sim_menutest/gpl/menutest/loadme2.html

Hva' dælen er det nu lige en "Stack Overflow" fejl er... og hvodden fikses
den ?


I begge tilfælde er det altså for en sjælden gangs skyld Explorer der giver
ballade, hvilket vel må betyde at det er i den browserspecifikke
HM_scriptDOM.js fil problemet ligger, da det er den bliver kaldt af min
Explorer 5.5


Mikkel

PS: Jeg har linket til alle de involverede scripts i bunden af siderne, så i
kan dissekere dem efter behag ;)



 
 
Stig Nygaard (25-07-2001)
Kommentar
Fra : Stig Nygaard


Dato : 25-07-01 10:08

Hej Mikkel

Jeg kan supplere med at submenuerne på dine to sider heller ikke åbnes
det rigtige sted i min Mozilla (23/7 2001 build). Det er ikke
NØDVENDIGVIS ensbetydende med at menuen ikke virker korrekt i Netscape 6
(bugs kommer og går i de løbende Mozilla-builds), men gør det meget
sandsynligt. Du skriver ikke om det er Netscape 4.x, Netscape 6 eller
begge at du har testet med, og om det er samme problem i IE ?

Jeg har ikke orket at studere din kode bag, andet end et super-hurtigt
kig. Gør det måske senere. Det ser dog umiddelbart ud for mig til at
Netscape 6 bruger samme Javascript som Internet Explorer 5+, dvs.
HM_scriptDOM.js. Hurra du bruger altså tilsyneladende W3C DOM kompatible
rutiner ! Kedeligt der tilsyneladende er fejl i dem dog

Mvh. Stig.


Mikkel Gram-Hansen (25-07-2001)
Kommentar
Fra : Mikkel Gram-Hansen


Dato : 25-07-01 11:21

Stig Nygaard <stig@REMOVE-THISrockland.dk> wrote in message
news:3B5E8C5A.6050606@REMOVE-THISrockland.dk...
> Hej Mikkel
>
> Jeg kan supplere med at submenuerne på dine to sider heller ikke åbnes
> det rigtige sted i min Mozilla (23/7 2001 build). Det er ikke
> NØDVENDIGVIS ensbetydende med at menuen ikke virker korrekt i Netscape 6
> (bugs kommer og går i de løbende Mozilla-builds), men gør det meget
> sandsynligt. Du skriver ikke om det er Netscape 4.x, Netscape 6 eller
> begge at du har testet med, og om det er samme problem i IE ?
>
> Jeg har ikke orket at studere din kode bag, andet end et super-hurtigt
> kig. Gør det måske senere. Det ser dog umiddelbart ud for mig til at
> Netscape 6 bruger samme Javascript som Internet Explorer 5+, dvs.
> HM_scriptDOM.js. Hurra du bruger altså tilsyneladende W3C DOM kompatible
> rutiner ! Kedeligt der tilsyneladende er fejl i dem dog
>
> Mvh. Stig.

Hej Stig

Yep, det er Netscape 4 jeg har prøvet med.... og yep Netscape 6 vil også
hoppe på HM_scriptDOM.js, så der er vist efterhånden ved at være en rimelig
sikker synder der.

For at mindske studietiden kan jeg sige at det er følgende stump script i
HM_loader.js der både finder midten +/- men som samtidig giver stack
overflow i linje 837 (vel i HM_scriptDOM.js ?):

function HM_f_CenterMenu(topmenuid, vOffset) {
var MinimumPixelLeft = 0;
var TheMenu = HM_DOM ? document.getElementById(topmenuid) : HM_IE4 ?
document.all(topmenuid) : eval("window." + topmenuid);
var TheMenuWidth = HM_DOM ? parseInt(TheMenu.style.width) : HM_IE4 ?
TheMenu.style.pixelWidth : TheMenu.clip.width;
var TheWindowWidth = HM_IE ? document.body.clientWidth : window.innerWidth;
return (Math.max(parseInt((TheWindowWidth-TheMenuWidth) /
2),MinimumPixelLeft) + vOffset);
}.

Jeg har så vidt jeg husker kun lagt vOffset parameteret til, og det giver
altså ballade i linje 837....

Alt det her relaterer til menuen på
http://www.gh-webdesign.dk/sim_menutest/gpl/menutest/loadme2.html
Håber nogen finder tid til at kigge på sagen.


Mikkel






Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408528
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste