0

我想知道如何将事件处理程序从keydownandkeyup事件 ( e) 传递给自定义触发器处理程序 ( startand stop)。我需要这个才能让函数 moveWorldStart 和 moveWorldStop 能够获得它的值。

$(window).keydown(function(e){
    $(document).trigger('start');
}).keyup(function(e){
    $(document).trigger('stop');
});

$(document).on('start', moveWorldStart);
$(document).on('stop', moveWorldStop);

function moveWorldStart(e) {
    //e.which || e.keyCode == ?
}
function moveWorldStop(e) {
    //e.which || e.keyCode == ?
}

我尝试放置e不同的地方,但坦率地说,我不知道我在做什么。任何人都可以将我推向正确的方向吗?泰维姆 :)

4

1 回答 1

0

像这样:

$(window).keydown(function(e){
    $(document).trigger({
        type:"start",
        userEvent:e     
    });
});

function moveWorldStart(e) {
    console.log(e.userEvent)
}

看看 JSFiddle:http: //jsfiddle.net/qyL56/

查看文档:http ://api.jquery.com/trigger/

于 2013-06-22T10:13:34.543 回答