将 keydown 设置为在 jquery 中无法在 Firefox 中运行的情况下运行

发布于 2024-11-01 21:48:08 字数 582 浏览 2 评论 0原文

基本上我需要我的页面响应左右箭头键。所以试图让 body 标签触发一个事件 - 让它在 Chrome 等中工作,在 Firefox 中不会做任何事情 - 尝试谷歌搜索,经过 50 个不同的结果仍然没有骰子。有人有什么想法吗?

这是我所拥有的与 chrome-body 标记一起使用的脚本,

调用此脚本

$(document).ready(adjust());

----------------- -出于测试目的,javascript

function adjust(){
 $("body").keydown(function(){arrowKey(event.keyCode);});
}

function arrowKey(k){
alert(k);
    if (k==37)
        alert("Left");
    else if (k==39)
        alert("Right");
    else if (k==32)
        alert("space");
}

ive 将函数中的方法替换为警报,但我需要能够根据按下的箭头调用不同的函数

basicly i need my page to respond to left and right arrow keys. so trying to have the body tag trigger an event- got it working in chrome etc, will do nothing in firefox- tried googling and after 50 different results still no dice. anyone got any ideas?

heres what i have that works with chrome-

body tag calls this script

$(document).ready(adjust());

------------------the javascript

function adjust(){
 $("body").keydown(function(){arrowKey(event.keyCode);});
}

function arrowKey(k){
alert(k);
    if (k==37)
        alert("Left");
    else if (k==39)
        alert("Right");
    else if (k==32)
        alert("space");
}

ive replaced methods with alerts in the function for testing purpose but i need to be able to call different functions based on which arrow is pressed

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

浪荡不羁 2024-11-08 21:48:08

实际上,即使没有“事件”,它也可以在 chrome 中工作,因为 event 是 chrome 中的关键字,并且它填充了最后触发的事件。

它在 Firefox 中不起作用的原因是因为您应该像这样分配事件:

$(document).keydown(function(event){arrowKey(event.keyCode);});

出于某种原因“body”不接受 keydown 事件。希望有帮助。

Actually it works in chrome even without the "event" because event is a keyword in chrome and it is filled with the last triggered event.

The reason it doesn't work in firefox is because you should assign the event like this:

$(document).keydown(function(event){arrowKey(event.keyCode);});

For some reason "body" does not accept the keydown event. Hope it helps.

女皇必胜 2024-11-08 21:48:08
$("body").keydown(function( ){arrowKey(event.keyCode);});
                           ^ 

event 可能在 JSFIDDLE 上丢失

$("body").keydown(function(event){arrowKey(event.keyCode);});

$("body").keydown(function( ){arrowKey(event.keyCode);});
                           ^ 

event is missing perhaps

$("body").keydown(function(event){arrowKey(event.keyCode);});

On JSFIDDLE.

一抹淡然 2024-11-08 21:48:08

好的,为什么你不使用 JavaScript

window.body.onkeydown=function(evt)
{
arrowKey(evt.keyCode);
}

Ok Why You don't use JavaScript

window.body.onkeydown=function(evt)
{
arrowKey(evt.keyCode);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文