oncontextmenu aus- und wieder einschalten
Andy Nail
- html
Hallo zusammen,
auf der Seite verwende ich eine Tabelle um ein Forrmular gestalten zu können.
Gerne hätteich, dass auf dieser Seite in einem iframe, das Ccontextmenu von Windows nicht zu erreichen ist. Doch sitzen da dann auch Textfelder drin, in denen man ja gerne mal ein Kontextmenu verwenden würde. Also würde ich das oncontextmenu hier gerne wieder anbieten können. In den Zellen schreibe ich ja bereits oncontextmenu="return false", aber was soll dann in den Textfeld-Tags stehen?
Ich freue mich auf jegliche Hilfe, wofür ich mich auch bereits jetzt bedanken möchte.
Also Danke Gruß Andreas
Hallo Andy Nail,
auf der Seite verwende ich eine Tabelle um ein Forrmular gestalten zu können.
Die Verwendung einer Tabelle für diesen Fall ist zumindest grenzwertig. Flexbox existiert.
Gerne hätteich, dass auf dieser Seite in einem iframe, das Ccontextmenu von Windows nicht zu erreichen ist.
Es gibt Leute, die würden sagen, es sei völlig unerheblich, was du möchtest. Es kommt darauf an, was die Nutzer deiner Seite wollen. Und ich kann mir aus Nutzersicht keinen Grund vorstellen, unter dem ich einer Einschränkung meiner Möglichkeiten zustimmen könnte.
Außerdem musst du dich fragen lassen, warum du Frames verwendest, wenn es doch offenbar deine eigenen Inhalte sind?
Kurzform: Weder Iframe noch das Sperren des Kontextmenus sind gute Ideen. Für das eine solltest du dir eine Alternative suchen und das andere lassen.
Bis demnächst
Matthias
Jo Du Hallo,
Die Verwendung einer Tabelle für diesen Fall ist zumindest grenzwertig. Flexbox existiert.
JoJo mit dem Ganzen sieht das aber ganz gut aus.
Es gibt Leute, die würden sagen, es sei völlig unerheblich, was du möchtest. Es kommt darauf an, was die Nutzer deiner Seite wollen. Und ich kann mir aus Nutzersicht keinen Grund vorstellen, unter dem ich einer Einschränkung meiner Möglichkeiten zustimmen könnte.
Es gibt ja verschiedene Optionen in den Kontextmenüs, die ich gerne nicht anbieten würde. Aber halt gerne wieder in den Textfeldern anbieten würde.
Außerdem musst du dich fragen lassen, warum du Frames verwendest, wenn es doch offenbar deine eigenen Inhalte sind?
Jo, auf der Seite werden verschiedene Seiten in den iframes geladen, damit die Grundseite stehen bleiben kann. Und da noch den Code will ich nicht rein packen.
Kurzform: Weder Iframe noch das Sperren des Kontextmenus sind gute Ideen. Für das eine solltest du dir eine Alternative suchen und das andere lassen.
Na schön das wir da verschhiedene Meinungen haben. Aber was führt mich jetzt mit meiner Ansicht mit dem Umgang meiner Situation zum Ziel der gestellten Frage?
Danke Gruß Andreas
Hallo Andy Nail,
Es gibt ja verschiedene Optionen in den Kontextmenüs, die ich gerne nicht anbieten würde. Aber halt gerne wieder in den Textfeldern anbieten würde.
Was stört dich denn?
Registriere einen eventhandler für ein übergeordnetes Element. (addEventListener) Stelle fest, an welchem Element das Ereignis ausgelöst wurde (event.target) und blockiere das Contextmenu für die gewünschten Elemente.
Für die Seiten innerhalb der Frames kannst du das mMn. nicht von außen erledigen.
Noch mal. Weder Frames noch die Rechtsklicksperre sind gute Ideen. Du solltest es lassen.
Bis demnächst
Matthias
Jo Hallo und Vielen Dank an Dich!
Denn bei mir sieeht das jetzt so aus:
document.getElementById("Inhalt").oncontextmenu = Sperren
function Sperren()
{
Objekt = document.activeElement.tagName
if (Objekt != "INPUT" && Objekt != "TEXTAREA") return false
}
Und darauf muss man erst einmal kommen! Also nochmals vielen Dank an Dich!
Danke Gruß Andreas