Gatilho clique direito usando Javascript puro

Como posso triggersr manualmente um clique direito usando JavaScript?

Eu posso fazer isso com jQuery, mas só posso usar JavaScript puro neste caso.

Crie um evento usando o construtor CustomEvent ou (quando não for suportado), crie um evento usando document.createEvent com como argumento a cadeia “HTMLEvents” (porque você criará um evento click ). Em seguida, use o método initEvent para criar um evento de click .

Finalmente, use o método dispatchEvent para triggersr o evento. Se você estiver usando o IE, o método fireEvent deve ser usado.

Se você quiser acionar o evento rightclick, contextmenu , use o código abaixo:

 var element = document.getElementById('yourElement'); if (window.CustomEvent) { element.dispatchEvent(new CustomEvent('contextmenu')); } else if (document.createEvent) { var ev = document.createEvent('HTMLEvents'); ev.initEvent('contextmenu', true, false); element.dispatchEvent(ev); } else { // Internet Explorer element.fireEvent('oncontextmenu'); } 

Tomando Rob W exemplo, eu não tentei, mas, você precisa fazer o object de evento e passá-lo ao triggersr o evento. para o clique direito, passe event.button = 2;

 var element = document.getElementById("yourElement"), ev; if(document.createEvent ) { ev = document.createEvent("MouseEvents"); ev.initMouseEvent("click", true, false, window,0,0,0,0,0,false,false,false,false,2,null); element.dispatchEvent(ev); } else { ev = document.createEventObject(); ev.button = 2; element.fireEvent('onclick', ev); } 

Atualizado de acordo com o mdn initMouseEvent. Boa sorte 🙂