Avatar billede krogstrup Nybegynder
27. marts 2004 - 11:15 Der er 7 kommentarer og
1 løsning

Problemer med onContextMenu visning

Jeg har pt. slået højrekliksmenuer fra ved at indsætte onContextMenu="return false;" i BODY da jeg specifikt på nogle links på siden har mine egne context menuer.

Men jeg ønsker egentlig at have 2 forskellige context menuer:

1) Den link-specifikke context menu som allerede i dag fungerer ved at jeg på mine links angiver onContextMenu="visLag1; return false;" Dette fungerer udemærket

2) Når man klikker udenfor mine links - altså på et tomt område i BODY ønsker jeg at få vist et andet lag, men hvis jeg indsætter onContextMenu="visLag2; return false;" i BODY får jeg jo både vist lag1 OG lag2 når man højreklikker på mine links.

Hvordan undgår jeg at min generelle context menu IKKE vises når man trykker på mine links, som har sin egen specifikke context menu.

/David
Avatar billede htm Nybegynder
27. marts 2004 - 11:24 #1
smid oncontextmenu på body til at vise alt andet. Så smider du også oncontextmenu på dine links og denne viser lag1...

Ellers kan du smide det ind i en <span>
<span oncontextmenu="vislag1; return false;"><a href=".....">Text</a></span>
Avatar billede krogstrup Nybegynder
27. marts 2004 - 11:27 #2
ja, men hvis jeg smider onContextmenu i BODY eksekveres på både denne menu + mine link-specifikke contextmenus når jeg trykker på mine links !!!!

Problemet er jo netop at når man trykker på mine links som har egen oncontextmenu handler så eksekveres denne SAMTIDIG med at oncontextmenu fra BODY eksekveres ?!?
Avatar billede htm Nybegynder
27. marts 2004 - 11:30 #3
oooh ja ok. Det virker hellere ikke ved at smide det i en <span> eller <div> ?

Ellers kan jeg ikke lige se hvad der skal til...
Avatar billede krogstrup Nybegynder
27. marts 2004 - 11:32 #4
nå, har fundet en løsning på det.

Når mit link-specifikke lag vises sætter jeg en variabel til TRUE. Når så min onContextMenu handler fra BODY eksekveres tjekker jeg først om denne variabel er TRUE eller FALSE.

Det virker fint

Ellers tak for indsatsen...

:-)
Avatar billede roenving Novice
28. marts 2004 - 00:41 #5
Sæt event.cancelBubble=true, når du behandler eventen og du ikke vil have den skal boble op i hierarkiet !-)
Avatar billede krogstrup Nybegynder
29. marts 2004 - 01:21 #6
altså <a href="" onContextMenu="visMitLag(); event.cancelBubble=true; return false;">link</a>

?!?
Avatar billede roenving Novice
29. marts 2004 - 01:23 #7
Ja !-)
Avatar billede roenving Novice
29. marts 2004 - 01:41 #8
Selvom jeg sikkert uden at tænke nærmere over det ville flytte cancelBubble først:

<a href="" onContextMenu="event.cancelBubble=true;visMitLag();return false;">link</a>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester