rechtsklickmenü
steffen
- javascript
Hi Forenleser,
guten Morgen erstmal :)
ich habe auf einer seite ein Rechtsklickmenü entdeckt.
[Link:http://gloop.fireburn.de/rechtsklick.html]
Nun hab ich dazu ein paar Fragen, hoffe ihr könnt mir da schnell weiterhelfen:
1.) Wie wird dort die Rechte Maustaste angesprochen? Normal ist das ja event.button, aber das taucht in dem script nicht auf.
2.) Die Variable e wird nirgends festgelegt, trotzdem wird sie direkt verwendet.
3.) var obj = ns6 ? e.target.parentNode : event.srcElement.parentElement; Was genau macht diese Zeile
Danke euch für die hilfe
steffen
Hello out there!
3.) var obj = ns6 ? e.target.parentNode : event.srcElement.parentElement; Was genau macht diese Zeile
http://de.selfhtml.org/javascript/sprache/bedingt.htm#entweder_oder
See ya up the road,
Gunnar
Hallo Gunnar,
3.) var obj = ns6 ? e.target.parentNode : event.srcElement.parentElement; Was genau macht diese Zeile
danke für den Link, aber ich weiß was das "? :" bedeutet. Nur weiß ich nicht was event.srcElement.parentElement weil in http://de.selfhtml.org/javascript/sprache/eventhandler.htm steht scrElement nicht dabei :(
e.target.parentNode hingegen wurde für e. nichts angegeben, deshalb auch hier ein dickes ? meiner seits :(
steffen
Hallo,
3.) var obj = ns6 ? e.target.parentNode : event.srcElement.
srcElement ist die Microsoft-proprietäre Eigenschaft für das Zielelement des Ereignisses, d.h. das Element, bei dem das Ereignis tatsächlich ursprünglich passierte. In DOM Events gibt es dafür die Eigenschaft target des Eventobjektes.
var target = e.target ? e.target : window.event.srcElement; z.B. führt also dazu, dass in jedem Fall das Zielelement in der Variable target gespeichert wird.
e.target.parentNode hingegen wurde für e. nichts angegeben, deshalb auch hier ein dickes ? meiner seits :(
e wird der Event-Handler-Funktion (in allen Browsern außer IE) automatisch als erster Parameter übergeben, es handelt sich dabei um das Event-Objekt.
Mathias
Hey,
1.) Wie wird dort die Rechte Maustaste angesprochen? Normal ist das ja event.button, aber das taucht in dem script nicht auf.
document.oncontextmenu = ItemSelMenu;
2.) Die Variable e wird nirgends festgelegt, trotzdem wird sie direkt verwendet.
ist das ein scherz?
function mouseSelect(e)
3.) var obj = ns6 ? e.target.parentNode : event.srcElement.parentElement; Was genau macht diese Zeile
wie auch in so vielen anderen Fällen: $suchmaschine hilft!
Tschö
Hi,
2.) Die Variable e wird nirgends festgelegt, trotzdem wird sie direkt verwendet.
ist das ein scherz?
function mouseSelect(e)
Ja aber da steht ja nichts drin und die variable e wird direkt verwendet.
mfg
ich habe auf einer seite ein Rechtsklickmenü entdeckt.
[Link:http://gloop.fireburn.de/rechtsklick.html]
Nun hab ich dazu ein paar Fragen, hoffe ihr könnt mir da schnell weiterhelfen:
1.) Wie wird dort die Rechte Maustaste angesprochen? Normal ist das ja event.button, aber das taucht in dem script nicht auf.
Was ist der event.button?
Die rechte Maustaste ist das Kontexmenu:
document.oncontextmenu = ItemSelMenu;
2.) Die Variable e wird nirgends festgelegt, trotzdem wird sie direkt verwendet.
Das event objekt wird in Mozillabrowsern automatisch jeder Eventfunktion übergeben.
üblicherweise wird daher eine Eventfunktion so eingeleitet:
function onEvent(e)
{
if(!e) e = window.event; // Der Event von nicht MZ Browsern ist global
....
3.) var obj = ns6 ? e.target.parentNode : event.srcElement.parentElement; Was genau macht diese Zeile
Es unterscheidet die verschiedenen Browsern, dass aber nicht besonders Glücklich, da ns6 Objekte prüft, die nichts mit dem hier zu tun haben.
Besser ist sowas:
var obj = e.target ? e.target.parentNode : e.srcElement.parentElement;
Ausführliche Information über JS events in den verschiedenen Browsern findest du hier http://www.quirksmode.org/js/introevents.html und ff.
Struppi.