如果我有一个链接并希望绑定键盘快捷键,我应该怎么做?这似乎不起作用:
<a id="next" href="/next/page">Next page</a>
<script src="mousetrap.js"></script>
<script>
Mousetrap.bind("n", function() {
document.getElementById("next").click();
});
</script>
答案 0 :(得分:0)
您是否需要点击链接?这样的事情对你有用吗?
Mousetrap.bind("n", function() {
window.location.href = "/next/page"; //Or document.getElementById('next').href as in Robert's response.
});
此外,这可能有所帮助:How do I programmatically click on an element in JavaScript?
答案 1 :(得分:0)
我认为你的代码不能正常工作,因为我不是JS专家,有几个原因;我只是从我的小经历中说出这一点。
您假设为Anchor标记定义了onClick函数。即使它是 - 你还没有定义onclick函数中发生的事情。
你应该使用外部功能来达到同样的目的;所以有效地使用一个锚标签,使用可以点击和一个功能,当用户按下'N'时,该功能也将用户带到所需的页面。
我试着想一点解决方案;请看下面,看看你是否可以找出可能出错的地方。我会让一些有经验的人告诉你什么是错误的,以及为什么它不起作用。
<html>
<head>
<title>mouse trap test</title>
</head>
<body>
<a id="next" href="next/page">Next page</a>
<script src="mousetrap.js"></script>
<script>
function GoToLocation(url)
{
//window.location = "http://www.stackoverflow.com";
window.location = url;
}
Mousetrap.bind("n", function() {
//alert('N pressed' + document.getElementById("next").href);
//document.getElementById("next").click();
GoToLocation(document.getElementById("next").href);
});
</script>
</body>
</html>
我希望以上有所帮助。