我正在玩jquery事件对象,但我被困在地狱
我阅读了API https://api.jquery.com/category/events/event-object/但它在这里并没有真正起作用,我甚至不确定这是一个很好的领导
你有什么建议(问题是要完全按住ctrl +点击一个链接).我看到一些关于它的帖子,但似乎在最近的浏览器上没有任何效果
非常简单的例子:
<span id="toto">toto</span>
<a href="https://google.fr" id="inANewTab"></a>
// The goal is when I click on #toto, I would like #inANewTab trigger
// in a new tab without focus. To do that I was thinking
// about replicate a ctrl+click event
$('#toto').click(function(){
???
})
Run Code Online (Sandbox Code Playgroud)
在纯 javascript 中,您可以使用MouseEvent:
document.getElementById("todo").dispatchEvent(new MouseEvent("click", {ctrlKey: true}));
Run Code Online (Sandbox Code Playgroud)
要以编程方式打开一个新选项卡,您可以这样做:
const a = document.createElement("a");
a.setAttribute("href", "https://www.google.com/");
a.dispatchEvent(new MouseEvent("click", {ctrlKey: true}));
Run Code Online (Sandbox Code Playgroud)
编辑:
jQuery中的Event对象有一个ctrlKey参数,你可以在点击时将其指定为true.
var e = jQuery.Event("click");
e.ctrlKey = true;
$('#id').trigger(e);
Run Code Online (Sandbox Code Playgroud)