2013-09-21 70 views
0

所以我有一個很小的函數來滑動和隱藏頁腳和其他元素,兩個.click函數工作得很好,但我沒有得到鍵盤響應,我的問題,有沒有一種方法來觸發相同的函數,而不必使用.click事件和鍵盤觸發器同時重複播放它?用鍵盤Javascript觸發這個動作

$(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"); 
     } 
});   
+0

已經解決它.. – user2770956

回答

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(); 
     }  
    }); 

} 
+0

謝謝!這是我最後做的一個類似的方法。 – user2770956

相關問題