2011-06-21 144 views
31

我有一種情況,我想使用jquery捕獲「shift + tab」鍵的同時按鍵事件。事實上,大家都知道它是用來向後移動標籤的,但對於我來說,在一種情況下,標籤不能以任何方向工作,即不向前或向後。所以我發現一個jQuery功能正向移動標籤如下: -捕獲「shift + tab」按鍵事件

$(':input').live('keydown', function(e) {  
    var keyCode = e.keyCode || e.which;  
    if (keyCode == 9) {  
     tindex = parseInt($(this).attr("tabindex")) + 1; 
     if($(":input[tabindex='" + tindex + "']")) 
     { 
      $(":input[tabindex='" + tindex + "']").focus(); 
     } 
    } 
}); 

現在我想移動的反方向塔赫標籤爲好。 有人可以指導我如何做到這一點?

+1

不要忘記加入'返回false取消默認事件; '代碼。 –

回答

60

您可以使用e.shiftKey來檢查觸發事件時是否保持shift鍵。

如果添加if聲明,事件處理程序,檢查Shift鍵是否舉行,您可以執行不同的操作:

if(keyCode == 9) { 
    if(e.shiftKey) { 
     //Focus previous input 
    } 
    else { 
     //Focus next input 
    } 
} 
+0

+1,爲了節省一天! – a5his