0

所以我有一个很小的功能来滑动和隐藏页脚和其中的其他元素,.click 功能都运行良好,但我没有得到键盘响应,我的问题,有没有办法触发相同的功能而无需使用 .click 重复它。点击事件和键盘同时触发?

$(function () { 
        $("#downmenu").click(function(){
            $("#filo").slideToggle("fast");
            $("#downmenu").css("display", "none");
            $("#upmenu").css("display", "block");
        });
        $("#upmenu").click(function(){
            $("#filo").slideToggle("fast");
            $("#downmenu").css("display", "block");
            $("#upmenu").css("display", "none");
        });
        if ((event.keyCode == 40)) {
            $("#filo").slideToggle("fast");
            $("#downmenu").css("display", "none");
            $("#upmenu").css("display", "block");                   
        } else if ((event.keyCode == 38)) {
            $("#filo").slideToggle("fast");
            $("#downmenu").css("display", "block");
            $("#upmenu").css("display", "none");
        }
});         
4

1 回答 1

0
function f1(){
     $("#filo").slideToggle("fast");
     $("#downmenu").css("display", "none");
     $("#upmenu").css("display", "block");
}

function f2(){
    $("#filo").slideToggle("fast");
    $("#downmenu").css("display", "block");
    $("#upmenu").css("display", "none");
}

$(function(){
    $("#downmenu").click(function(){
        f1();
    });
    $( "body" ).keypress(function( event ) {
      if ( event.which == 40 ) {
        f1();
    }    
    });

     $("#upmenu").click(function(){
        f2();
     });

     $( "body" ).keypress(function( event ) {
        if ( event.which == 38 ) {
          f2();
        }    
    });

}
于 2013-09-21T20:24:09.643 回答