javascript - 如何在不调用 onclick 的情况下在新窗口中打开链接

标签 javascript html hyperlink tabs

我有如下HTML代码:

 <a href="#" onclick="reloadPage()">Text</a>

当用户通过“鼠标左键”点击链接时,应该调用 reloadPage()。

但是当用户在链接上使用“Ctrl + 单击”或“中间按钮”单击时,我想打开一个新窗口而不使用 reloadPage()。

我该怎么做?

最佳答案

可以引用here .这是我的代码

<a href="#" id="test" onclick="reloadPage(event)">Click Me</a>

<script>
$(document).ready(function() {

$(document).keydown(function(event){
    if(event.which==17)
        cntrlIsPressed = true;
});

$(document).keyup(function(){
    cntrlIsPressed = false;
});
});
var cntrlIsPressed = false;


function reloadPage(mouseButton,event)
{
        //event.preventDefault();
    if( event.which == 2 ) {
        //todo something
      //window.open($("#test").attr("href"));
      alert("middle button"); 
      return false;
    }
    if(cntrlIsPressed)
    {
         //window.open($("#test").attr("href"));
        // ctrl + click 
        return false;
    }
    //todo something
    window.location.href = $("#test").attr("href");
    return true;
}
</script>

关于javascript - 如何在不调用 onclick 的情况下在新窗口中打开链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34281902/

相关文章:

javascript - 使用 vanilla javascript 检测我是否将鼠标悬停在元素上

java - Selenium WebDriver : To which extent can I rely on JavaScript?

javascript - 带有ajax加载多页的JQuery mobile + Phonegap

html - 删除 td 的外边框

javascript - Marionette/Backbone 应用程序导致服务器(套接字)过载

javascript - 跳房子 on 关闭游览功能

java - 在小程序 HTML 上加载图像

javascript - Bootstrap 内的 HTML 链接折叠不起作用

visual-studio - 如何在 Web 浏览器中而不是 Visual Studio 中打开 Visual Studio 中的链接?

javascript - jQuery:通过 anchor 链接滑动