所以我有这个html
<a class='test' href='somewhere' target='_blank'>Click me </a>
我期待着这个jQuery选择器点击它
我尝试了以下两种方法,但新选项卡在Chrome中无法打开
$('.test').click()
$('.test').trigger('click')
发布于 2013-10-09 13:47:34
jQuery .click()
和.trigger('click')
仅用于启动附加到单击事件的任何事件处理程序。它实际上不会单击链接并将您带到href。
发布于 2013-10-09 13:58:59
您实际上想要做的是通过jQuery在单击时打开另一个窗口/选项卡。正如Andi在他们的回答中所说,.click()
和.trigger('click')
只是触发了处理程序,并不代表页面上的实际点击。使用:
window.open($('.test').attr('href'));
参见Fiddle。单击'Click me‘将打开stackoverflow链接
但是,一些浏览器会以弹出窗口的形式阻止此请求,因此最好在用户实际与页面交互时生成此请求。
发布于 2013-10-09 14:31:21
正如Andi在他们的回答中所说的,点击注入实际上不会点击链接,但会启动元素点击事件。因此,这可能是一种变通解决方案:
$('.test').click( function () {
window.open($(".test").attr("href"));
});
$('.test').click();
https://stackoverflow.com/questions/19273644
复制相似问题