2014-10-20 83 views
1

我想觸發功能當我控制+單擊HTML> TABLE> TR觸發其他功能當我不使用控制鍵。觸發按鍵的功能,然後點擊

說明:

在這裏我有一個HTML表格。我點擊了> tr點擊功能,並且點擊這個tr顯示一個fancybox。

但現在我想點擊一個特定的TD在同一TR,但即使我指定指定表> TR> TD ID的第一功能是越來越調用。

我已經申請了表> TR類和HREF爲的fancybox出現,當我關閉的fancybox類和HREF被按照我的願望刪除。

但現在當我想用同樣的TR點擊該TR調用其他的fancybox,則類和HREF被應用到TD的TD,但的fancybox沒有按不會出現屬於td的,但似乎屬於tr。

 $('#tbl').on('click','tbody tr',function(){ 
        //fancybox 1 to be appeared 
     }); 



     $('#tbl').on('click','tbody tr td#comm',function(){ 
        //fancy box 2 to be appeared.. 
     }); 

如果需要CTRL或ALT或SHIFT鍵可應用於

+0

看看下面的內容http://stackoverflow.com/questions/2485345/javascript-or-jquery-event-handlers-for-ctrl-shift-mouse-left-button-click – 2014-10-20 07:20:53

+0

請注意, HTML doms是唯一的。您不能擁有ID爲「comm」的多個TD。因此,如果您只想擁有一個帶有此ID的TD,則可以將選擇器縮短爲:$('#comm).click(function(){// your function}); – 2014-10-20 07:21:01

回答

0

e.ctrlKeytrueCtrl鍵被按壓(其中e是從事件處理程序的第一個參數的事件對象):

$('tbl').on('click', 'tbody tr', function(e) { 
    if (e.ctrlKey) { 
     //fancybox 1 to be appeared 
    } 
}); 

此外,你有shitKeyaltKey當他們被按下時是true

+0

@Ionica Bizau。感謝您的評論。但我想要一個ctrl點擊第二個fancybox和第一個只有一個正常的點擊 – kishore 2014-10-20 07:26:59

+0

@kishore您可以添加一個'else'並處理*正常*點擊。 – 2014-10-20 07:48:57

+0

有使用這個問題,因爲我甚至必須從fancybox呈現響應,並顯示在TD ..當我點擊它通過Ctrl +點擊,然後我得到的表單加載,我看到通過調試工具,但有時它顯示的fancybox。請幫忙 – kishore 2014-10-20 10:38:01

0

你也可以使用preventDefault()文檔是here。希望這有助於。

+0

謝謝@Aameer這可能會幫助..我會檢查出我的代碼 – kishore 2014-10-20 07:28:04