Ergebnis 1 bis 13 von 13
  1. #1
    Poehli ist offline Doppel-As
    registriert
    18-04-2009
    Beiträge
    111

    Question Rechtklick funktioniert nicht Ordnungsgemäß

    Hi,
    ich bin gerade dabei eine Website zu programmieren, die ein Rechtklickmenü bekommen soll.
    Jetzt habe ich ein Objekt erstellt, dem man eine Rechtklick Funktion zuweisen kann. In meiner Testdatei funktioniert es einwandfrei, im zusammenhang mit anderem Code jedoch nur in Firefox. In Safari und anderen Browsern wird das oncontextmenu-Ereignis ignoriert. Das bedeutet, dass dort irgendwo ein Konflikt mit dem Ereignis stattfinden muss.
    Ich habe sämtliche mir erdenklichen Sachen probiert. Die Function ist richtig zugewiesen (mit console.log überprüft), nur wird offensichtlich das oncontext Ereignis nicht abgefeuert.

    Was könnte dieses Event in allen anderen Browsern blockieren?

    Ich würde ja den Problemcode hochladen, wenn ich wüsste welcher das ist

    Gehe ich richtig in der Annahme, dass ausschließlich Element.oncontextmenu = function(){return false;} ein das selbige unterbinden kann (natürlich abgesehen von den millionen Schreibweisen die es dafür gibt )?

    Wäre gut, wenn ihr da noch ein paar Ideen mit einbringen könntet

  2. #2
    Poehli ist offline Doppel-As
    registriert
    18-04-2009
    Beiträge
    111

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Ich hatte einen Geistesblitz und hab den Fehler jetzt eingegrenzt:

    Mein DIV container auf den ich klicke ist leer, aber auf 100% gesetzt, demnach kann ich nur ganz oben links in der Ecke klicken und da passiert auch das richtige, jetzt ist nur noch die Frage, wie man den DIV "auffüllt". Kann ja nicht sein, dass man einem leeren DIV nichts zuweisen kann.
    Da fehlt mir jetzt jedoch wieder die Eingebung :/
    Kann mir dabei jemand helfen?

  3. #3
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Was heißt denn "auf 100% gesetzt? Ohne Informationen können wir dir nicht helfen.

  4. #4
    Poehli ist offline Doppel-As
    registriert
    18-04-2009
    Beiträge
    111

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Ok tschuldigung, drücke mich öfter mal unklar aus
    Also auf der Site erstelle ich zur Laufzeit ein ausgelagertes Stylesheet mit einer eigenen Endung. In der habe ich die Div container auf width:100% und height:100% gesetzt. JavaScript interpretiert dies nun aber offensichtlich - abgesehen von Firefox - als einen Div Container, der Leer ist, da ausschließlich die oberste linke Ecke anzuklicken ist (so als würde man einem leerem Div ohne Style ein onclick Event zuweisen) und nicht das gesammte sichtbare Element.

    Code:
    Model mit Beispielen:
    __________________________
    |X|<--- klickbar          |
    |                         |
    |   nicht klickbar  --->X |
    |                         |
    |                         |
    |                         |
    |_________________________|
    
    Ein DIV Container mit Breite 100% und Höhe 100%
    Ich hoffe, das macht es etwas verständlicher

  5. #5
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    von was 100%? Vom Wurzelelement?
    Dann hat das nichts mit JS zu tun, auch CSS füllt nicht automatisch ein Element auf, lass dir doch einfach mal das Element anzeigen:
    HTML-Code:
    <!DOCTYPE html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <style type="text/css">
    #id {
    	width:100%;
    	height:100%;
    	background-color:red;
    }
    </style>
    </head>
    <body>
    
    
    <div id="id"></div>
    
    </body>
    </html>
    Du musst dem Wurzelelement (html) eine Höhe geben.

  6. #6
    Poehli ist offline Doppel-As
    registriert
    18-04-2009
    Beiträge
    111

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Tschuldige aber bitte lies was ich geschrieben habe.
    Ich HABE mein Element auf die höhe 100% gesetzt und es WIRD angezeigt. Nur das onClick Ereignis erkennt diese Höhe nicht.
    Ums noch deutlicher zu machen hier:

    Bildschirmfoto 2012-11-23 um 16.51.47.png
    Beim Rechtsklick oben links in die Ecke <- Benutzerdefiniertes Rechtsklickmenü wird geöffnet



    Bildschirmfoto 2012-11-23 um 16.51.38.png
    Beim Rechtsklick anderswo auf dem Div <- Rechtsklickmenü vom Browser

    EDIT:
    von was 100%? Vom Wurzelelement?
    Von dem Body Element
    Geändert von Poehli (23-11-2012 um 21:01 Uhr)

  7. #7
    Poehli ist offline Doppel-As
    registriert
    18-04-2009
    Beiträge
    111

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Ich hab einen erneuten Geistesblitz gehabt und endlich herausgefunden woran es lag:
    JavaScript mag bei anderen Browsern wohl keine negativen Z-Indexe. Da das Body Element noch ca 5px kleiner ist als 100%, wurde das oncontextmenu event ganz richtig nur dort abgefeuert
    Hab jetzt die Z-Indexe Positiv gesetzt und es funktioniert

  8. #8
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.911

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Zitat Zitat von Poehli Beitrag anzeigen
    JavaScript mag bei anderen Browsern wohl keine negativen Z-Indexe.
    Woher hätten Außenstehende das wissen sollen, wenn du keinen Code zeigst?
    Es steht sogar im SelfHTML, dass sich die Browser bei negativen Z-Indexen unterschiedlich verhalten. Hat wohl mit der CSS Spezi zu tun. Nach der neuen sind negative Z-Indexe nicht vorgesehen.
    Hat also mit JS nichts zu tun.

  9. #9
    Poehli ist offline Doppel-As
    registriert
    18-04-2009
    Beiträge
    111

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Naja, die Anzeige war ja korrekt, nur das JavaScript hat gemeckert
    Nein konntet ihr natürlich nicht wissen, aber ich kann auch schlecht 3000 Zeilen Code hochladen. Das würde dann auch keiner lesen wollen :P

  10. #10
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Zitat Zitat von Poehli Beitrag anzeigen
    Beim Rechtsklick anderswo auf dem Div <- Rechtsklickmenü vom Browser

    EDIT: Von dem Body Element
    und welche Höhe hat das body Element?

    Aber aus dem Rest deiner Ausführungen werde ich auch nicht schlau. Wo kommt plötzlich der z-Index her?

    Keiner sagt, dass du 3000 Zeilen Code zeigen sollst, für dein Problem hätten vermutlich 10 Zeilen gereicht. Null Zeilen Code, bedeutet das wir nicht Wissen was du tust und können dir folglich auch nicht helfen. Es ist immer hilfreich ein Beispiel zu bauen, sowohl für die die dir helfen sollen und oft auch für einen selbst.

    Ich glaube nämlich nicht, dass dein Problem etwas mit dem z-index zu tun hat, aber wir werden es wohl nie erfahren.

  11. #11
    Poehli ist offline Doppel-As
    registriert
    18-04-2009
    Beiträge
    111

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Nur um es nochmal zu klären:
    Ich bastel mir ein System, bei dem über ein Rechtsklick Menü CSS Dateien verändern kann. Es ist eine Art Settings-Window was aufpopt. Ich wollte hingegen bei besonderen Elementen ein anderes Settings-Window öffnen. Dafür habe ich verschiedenste Elemente erstellt. Die Setting Windows haben Eingaben mit denen man CSS-Eigenschaften mit JavaScript verändert kann. Anschließend wird das Script gespeichert und wieder hochgeladen.
    Ich hatte nun das Problem, dass der Z-Index im negativen Bereich lag (Ich wusste nicht, dass man das so nicht machen sollte) und somit das Element von JavaScript nicht angenommen wurde. Es mag sein, dass es einfach das Body Element war, welches davor lag, oder sonst ein Standard Element - ich weiß es nicht. Jedenfalls, nachdem ich den Z-Index also so verändert habe, dass er bei 0 anstatt -999 lag, funktionierten die Rechtsklickmenüs alle einwandfrei, auf den bisher getesteten Browsern.
    Daher würde ich schon sagen, dass es an dem Z-Index lag
    Und da der Code ineinander verschachtelt ist und ich die Vermutung hatte, dass es an meinem selbsterstellten Objekt lag, hätte ich zmd. 1000 Zeilen Code uploaden müssen und auch das ist noch zu extrem.
    Wenn man weiß wo das Problem liegt, ist es meistes auch leicht eine Lösung zu finden, da man wirklich nur ein paar Zeilen zeigen muss, aber ich wusste ja nicht wo das Problem lag. Also bitte ich dies zu entschuldigen, ich hatte lediglich die Hoffnung, dass einer spontan einen solchen Fehler schon hatte. Jetzt passt ja auch alles also ist doch alles gut
    PS: was ist an der höhe 100% vom Body Element nicht zu verstehen? Ich kann dir keine Pixelgröße nennen, da halt jeder Browser verschieden groß ist

  12. #12
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.911

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Zitat Zitat von Poehli Beitrag anzeigen
    Und da der Code ineinander verschachtelt ist und ich die Vermutung hatte, dass es an meinem selbsterstellten Objekt lag, hätte ich zmd. 1000 Zeilen Code uploaden müssen und auch das ist noch zu extrem.
    Wenn man weiß wo das Problem liegt, ist es meistes auch leicht eine Lösung zu finden, da man wirklich nur ein paar Zeilen zeigen muss, aber ich wusste ja nicht wo das Problem lag.
    Und genau aus diesem Grund ist die erste Pflicht eines Fragestellers eigentlich, den Code soweit zu reduzieren, dass das Problem noch reproduzierbar und der Code von seiner Größe her postbar ist. Das ist zwar aufwendig für den Fragesteller, führt aber in jedem Fall zur Ursache und entlastet die Glaskugeln der Leser.
    Nun ist es ja scheinbar gelöst und du weißt für das nächste mal die richtige Herangehensweise.
    Zitat Zitat von Poehli Beitrag anzeigen
    PS: was ist an der höhe 100% vom Body Element nicht zu verstehen? Ich kann dir keine Pixelgröße nennen, da halt jeder Browser verschieden groß ist
    Ist nicht mehr relevant, da man nach wie vor ohne Code nichts nachvollziehen kann.

  13. #13
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Rechtklick funktioniert nicht Ordnungsgemäß

    Zitat Zitat von Poehli Beitrag anzeigen
    PS: was ist an der höhe 100% vom Body Element nicht zu verstehen? Ich kann dir keine Pixelgröße nennen, da halt jeder Browser verschieden groß ist
    Naja, wenn das Elternelement HTML keine Höhe hat, hat die Angabe keine Auswirkungen.

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 14-03-2012, 09:42
  2. Antworten: 6
    Letzter Beitrag: 22-10-2009, 12:39
  3. this funktioniert im IE nicht
    Von esheep im Forum JavaScript
    Antworten: 8
    Letzter Beitrag: 05-02-2008, 15:39
  4. rechtklick menü überlinks
    Von .dominik. im Forum JavaScript
    Antworten: 0
    Letzter Beitrag: 23-07-2006, 16:33
  5. JS funktioniert nicht im IE6
    Von bungalo im Forum Script-Check
    Antworten: 1
    Letzter Beitrag: 26-10-2005, 13:57

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •