2016-03-03 114 views
0

我拼湊在一起的這段代碼,使用戶進一步向左/向右推進。它運作良好,我想同樣的上/下。如果有人知道,我會很感激的回覆!謝謝大家。如何將向上和向下箭頭鍵映射到向上和向下翻頁鍵

$(document).keydown(function(e) { 
    if (e.keyCode == 37) { 
    var leftPos = $('.jcarousel').scrollLeft(); 
    $(".jcarousel").animate({ 
     scrollLeft: leftPos - 800 
    }, 800); 
    return false; 
    } 
    if (e.keyCode == 39) { 
    var leftPos = $('.jcarousel').scrollLeft(); 
    $(".jcarousel").animate({ 
     scrollLeft: leftPos + 800 
    }, 800); 
    return false; 
    } 
    if (e.keyCode == 40) { 
    var topPos = $('.wrapper').scrollTop(); 
    // DO SOMETHING, BUT WHAT? 
    return false; 
    } 
    if (e.keyCode == 38) { 
    // DO SOMETHING, BUT WHAT? 
    return false; 
    } 
}); 
+0

看看這個線程:http://stackoverflow.com/questions/832059/definitive-way-to-trigger-keypress-events-with-jquery。只要有人按下向上箭頭,就可以使用它在「Page Up」鍵上觸發模擬的'keydown'事件。將它與'e.preventDefault()'結合起來,可以同時停止自然的向上箭頭功能。 – jmcgriz

回答

0

因此,這是最終的塊,它應該如此。 (想通了......)

<script> 
$(document).keydown(function(e){ 
    if (e.keyCode == 37) { 
     var leftPos = $('.jcarousel').scrollLeft(); 
     $(".jcarousel").animate({scrollLeft: leftPos - 1200}, 800); 
     return false; 
    } 
    if (e.keyCode == 39) { 
     var leftPos = $('.jcarousel').scrollLeft(); 
     $(".jcarousel").animate({scrollLeft: leftPos + 1200}, 800); 
     return false; 
    } 
    if (e.keyCode == 40) { //Down 
     var topPos = $(window).scrollTop(); 
    $(window).animate({scrollTop: topPos + 800}, 600); 
      $(".jcarousel").animate({scrollLeft: 0}, 800); 

     return false; 
    } 
    if (e.keyCode == 38) { //Up 

var topPos = $(window).scrollTop(); 
    $(window).animate({scrollTop: topPos - 800}, 600); 
      $(".jcarousel").animate({scrollLeft: 0}, 800); 

     return false; 
    } 
}); 
</script> 
相關問題