Avatar billede neigaard Nybegynder
18. oktober 2000 - 13:01 Der er 14 kommentarer

højreklik event?

Er der en højreklik event jeg kan fange?

Så når jeg højreklikker på et link (eller bare et sted i dokumentet), så kan jeg fyre en funktion af?
Avatar billede geeeet Nybegynder
18. oktober 2000 - 13:05 #1
<script language=\"JavaScript\">
function click() {
    if (event.button==2) {
        funktionsnavn();
    }
}
document.onmousedown=click
// -->
</script>

/Geeeet
Avatar billede nixen Nybegynder
18. oktober 2000 - 13:07 #2
eventen er den samme som Event.CLICK/onclick.
Den har et parameter der hedder which/button, for NS/IE, respektivt.
Avatar billede nixen Nybegynder
18. oktober 2000 - 13:10 #3
Øv - to slow.. :)
NS ekvivalent:
if (Netscape) document.captureEvents(Event.CLICK)
document.onclick = handler;
function handler(e) {
  buttonClicked = Explorer? event.button:e.which
  alert(buttonClicked)
}
// Explorer/Netscape er variable der angiver browsertype - Jeg har ikke testet det, men det burde fungere..
Avatar billede neigaard Nybegynder
18. oktober 2000 - 14:27 #4
Jeg tester det i aften :)
Avatar billede neigaard Nybegynder
19. oktober 2000 - 14:06 #5
Ok - det virker næsten :) Min funktion bliver kaldt, men den originale browser popup kommer også frem??? Hvordan kan jeg override den?
Avatar billede geeeet Nybegynder
19. oktober 2000 - 14:21 #6
Prøv med en return false;

/Geeeet
Avatar billede nixen Nybegynder
19. oktober 2000 - 14:22 #7
return false i handler-setup\'en, altså
syntaks 1:
<href =\"java script:handler();return false;\">
eller
syntaks 2:
function handler() eller click() eller noget (()){
balblabla
blahblahblablah
return false;
}

mener jeg da... skriv tilbage hvis ikke det  virker!

Avatar billede nixen Nybegynder
19. oktober 2000 - 14:23 #8
ØV!!! For langsom igen !!! :((
Avatar billede geeeet Nybegynder
19. oktober 2000 - 14:24 #9
Hehe, jeg skal nok lade være næste gang :-)

/Geeeet
Avatar billede nixen Nybegynder
19. oktober 2000 - 14:26 #10
Just kidding ;-))
Avatar billede neigaard Nybegynder
19. oktober 2000 - 14:35 #11
det vil ikke som jeg vil :(

Ok - jeg bruger noget DHTML/JavaScript som en anden flink person har lavet, som skulle poppe en popup frem. Det gør den også, også fint nok ved højreklik, men den popper også \"standard\" popupen frem!!?? Det er btw. ved højreklik på et vilkårligt sted i dokumentet (så jeg bruger \"return false\" in min \"showIt\" funktion).
Avatar billede nixen Nybegynder
19. oktober 2000 - 18:36 #12
Det kan godt være jeg har misforstået det, men en ekstra return false burde ikke spolere festen (?)

Det du vil have det til er, gætter jeg på, at når en bruger højreklikker
1) over et link
  kommer linket frem i et popup vindue
2) et andet sted på siden
  kommer der et \"du har højreklikket et sted på siden hvor der ikke er noget link\" op;
altså to forskellige dialoger alt efter om brugeren trykker på et link eller ej ?!?
Hvis du vil kan du jo lige skrive præcis hvad du vil have scriptet til at gøre - det er lidt besværligt x-browser da Netscapes event-model starter fra window(eller document) objektet, mens Explorer starter nedefra og \"bubbler\" opad..
Avatar billede neigaard Nybegynder
20. oktober 2000 - 10:39 #13
Ja noget ligende det. Jeg kan jo godt få scriptet til at poppe menuen frem, men \"standard\" menuen kommer med i købet... Hvordan udgår jeg det???

Er der nogen der kunne tænke sig at få tilsendt en kopi af min kode, så sig endelig til (jeg kan vist ikke løse det selv)!
Avatar billede nixen Nybegynder
21. oktober 2000 - 15:14 #14
jeg vil da gerne kigge på det - men hvis det ligner noget der tager mere end en halv time at løse må jeg nok melde pas..
send den til nis@jubii.dk
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