Fondamentalmente, voglio aprire un menu contestuale sul clic sinistro stesso. C'è comunque da fare usando jQuery?Come posso attivare il clic destro se si fa clic con il tasto sinistro su un elemento html usando jQuery?
risposta
Non è possibile. 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/
è possibile registrare evento per fare clic destro e grilletto qualsiasi evento che si desidera eseguire sul tasto destro del mouse.
Non è possibile attivare il tasto destro del mouse, ma è possibile attivare la pressione dei tasti utilizzando .trigger()
Shift + F10 dovrebbe attivare il menu contestuale su Windows, qualcosa di simile ...
function openContextMenu() {
jQuery.event.trigger({ type: 'keypress', which: 121, shiftKey: true });
}
Inoltre c'è un tasto menu contestuale (sulla destra prima CTRL sulla 104+ tastiere chiave) che I think might essere keycode 93:
function openContextMenu() {
jQuery.event.trigger({ type: 'keypress', which: 93 });
}
Aggiornamento
In realtà questi simulano semplicemente l'evento: qualsiasi evento JS per quell'evento, ma la chiave effettiva non viene inviata.
È possibile farlo con un oggetto ActiveX:
// ActiveX object
var shell = new ActiveXObject("WScript.Shell");
// Send SHIFT+F10
shell.SendKeys("+{F10}");
Tuttavia tale componente è contrassegnato come non sicuri per lo scripting ed è IE soltanto, in modo che la soluzione è veramente solo pratico per intranet e simili.
Non ho potuto far funzionare nessuna di queste soluzioni. Li hai provati? –
@Jason Dean - no, sono davvero solo un punto di partenza, ma ho pensato che valesse la pena contribuire. – Keith
- 1. Cacao: Fare clic con il tasto destro su NSStatusItem
- 2. Fare clic con il tasto destro su un evento Javascript?
- 3. Rileva il clic destro e sinistro del mouse su NSView
- 4. WinForms ListBox Clic con tasto destro
- 5. autohotkey ctrl + clic = tasto destro
- 6. fare clic su Disattiva destro e attivare tasto sinistro per contextmenu in WPF utilizzando MVVM
- 7. Fare clic con il tasto destro su JavaFX?
- 8. Fare clic con il tasto destro su JButton
- 9. Come si ottiene un menu contestuale diverso se si fa clic su Lt-Click o si fa clic su Rt-clic su un'icona di notifica?
- 10. Fare clic con il tasto destro su ClojureScript?
- 11. Come attivare un clic del mouse con il tasto sinistro del mouse in C#?
- 12. Fare clic sull'evento nella riga della tabella - attivare solo se non si fa clic su null'altro
- 13. "Git Bash qui" non funziona quando si fa clic con il tasto destro
- 14. Il clic destro del flash si comporta in modo diverso rispetto al clic sinistro
- 15. Posso gestire un evento clic destro su un elemento HTML <button />?
- 16. JS: rileva il clic destro senza jQuery (in linea)
- 17. perché facendo clic con il tasto destro si crea un punto arancione al centro del cerchio?
- 18. PointerPressato non funzionante con clic sinistro
- 19. $ emettere un evento quando si fa clic su un elemento
- 20. Fare clic con il tasto destro in Python usando i tipi di carattere
- 21. Objective-C: NSStatusBar clic destro e sinistro
- 22. Cattura clic destro su HTML DIV
- 23. Come gestisco gli eventi del clic con il tasto destro in angular.js?
- 24. jQuery per attivare un clic su un iFrame?
- 25. come attivare Live() fare clic su jquery
- 26. Come rilevare il clic sinistro in qualsiasi punto del documento usando jQuery?
- 27. Come eseguire il binding con il tasto destro del mouse per fare clic su knockoutJs?
- 28. Come verificare se il tasto Opzione è disattivato quando l'utente fa clic su un pulsante NS
- 29. Simula clic su Seleziona elemento con jQuery
- 30. jQuery: Rimuovi classe se si fa clic su un altro elemento
Possibile duplicato: http://stackoverflow.com/questions/6250447/trigger-right-click –
@James Allardice: -Queste risposte non funzionano nel mio caso. Ho già provato che solo allora ho postato questa domanda. –
Funziona per me (in Chrome almeno): http://jsfiddle.net/interdream/EvZSA/3/ –