JQuery on('contextmenu') für den Körper, sondern eine Besondere Klasse

Ich habe eine große div (ganze Seite) und innen habe ich kleinere:

<div class="all">
    <div class="tiny"></div>
</div>

div.all ist wie ein Brett, für mich div.tiny ist ein kleines Rechteck auf.
Ich will mich zeigen, meinen besonderen Kontext-Menü jederzeit alles (oder nichts) in div.all erhalten RMB. Aber wenn ich RMB auf div.tiny ich nicht ausführen wollen, die "default" - Verfahren, aber einige (noch spezieller) - code. Ich habe versucht mit:

jQuery('body').on("contextmenu", ".all", function(){ /* special stuff */});

jQuery('body').off("contextmenu", ".all .tiny"); /* <- tried to turn off my...*/
/*...special stuff for .tiny that way*/

jQuery('body').on("contextmenu", ".tiny", function(){ 
    /* even more special stuff */
});

Wenn ich es laufen, RMB auf div.all oder-Elemente in es, ich bekomme "spezielle Sachen" gemacht. Aber wenn ich auf RMB auf div.tiny ich bekomme beide "spezielle Sachen" (die ich auch nicht möchte) und "noch mehr spezielle Sachen" (es ist so besonders, wie ich nicht will!).

Jede Lösung?

Leben schwer zu machen, die ich nicht ändern kann die Reihenfolge (die ersten jQuery() für div.all, ALS meine Funktionen für div.tiny) - in meinem realen Projekt die Dinge sind komplizierter, und ich habe zu halten, um für einige Gründe (noch ist es hübsch Aussehen vernünftig - von globalen Ereignissen bis präzise ein).

InformationsquelleAutor PolGraphic | 2013-11-21
Schreibe einen Kommentar