/ / Come posso attivare il tasto destro del mouse facendo clic con il tasto sinistro su un elemento html usando jQuery? - jquery, contextmenu

Come posso attivare il tasto destro del mouse facendo clic con il tasto sinistro su un elemento html usando jQuery? - jquery, contextmenu

Fondamentalmente, voglio aprire un menu contestuale sul clic sinistro stesso. C'è comunque da fare usando jQuery?

risposte:

6 per risposta № 1

Non puoi JavaScript non ha quell'accesso al browser. Invece è possibile creare il proprio menu di scelta rapida personalizzato e provare a dargli le scelte di comportamento desiderate dal normale menu di scelta rapida (Indietro, Avanti, ecc.). Naturalmente, alcuni di questi potrebbero essere soggetti a restrizioni (come copia / incolla).

http://labs.abeautifulsite.net/projects/js/jquery/contextMenu/demo/


1 per risposta № 2

è possibile registrare eventi per il clic destro e attivare qualsiasi evento che si desidera eseguire con il tasto destro del mouse.


1 per risposta № 3

Non è possibile attivare il clic con il tasto destro, ma è possibile attivare la pressione di un tasto .trigger()

Maiusc + F10 dovrebbe attivare il menu di scelta rapida su Windows, qualcosa come ...

function openContextMenu() {
jQuery.event.trigger({ type: "keypress", which: 121, shiftKey: true });
}

Inoltre c'è un tasto del menu contestuale (a destra prima di CTRL su tastiere con oltre 104 tasti) Penso che potrebbe essere keycode 93:

function openContextMenu() {
jQuery.event.trigger({ type: "keypress", which: 93 });
}

Aggiornare

In realtà, questi simulano semplicemente l'evento: qualsiasi evento JS per quell'evento, ma la chiave effettiva non viene inviata.

Puoi farlo con un oggetto ActiveX:

// ActiveX object
var shell = new ActiveXObject("WScript.Shell");

// Send SHIFT+F10
shell.SendKeys("+{F10}");

Tuttavia quel componente è contrassegnato come non sicuro per lo scripting ed è solo per IE, quindi quella soluzione è davvero molto pratica per intranet e simili.