2011-08-23 60 views
1

有沒有辦法將鍵盤事件綁定到jqPlot?我正在使用左右箭頭鍵將鼠標懸停在曲線上的點上。每個點也應該突出。鍵盤事件懸停/選擇點JQplot

我知道有很多方法可以單擊,雙擊等

$('#chart1').bind('jqplotClick', function(ev, gridpos, datapos, neighbor) { 
    if (neighbor) { 
    } 
}); 

我也實施shift點擊。

$('#chart1').bind('jqplotShiftClick', function(ev, gridpos, datapos, neighbor) { 
    if (neighbor) { 
    }  
}); 

定義:

this.onClick = function(ev) { 
    // Event passed in is normalized and will have data attribute. 
    // Event passed out is unnormalized. 
    if (ev.shiftKey) { 
     var positions = getEventPosition(ev); 
     var p = ev.data.plot; 
     var neighbor = checkIntersection(positions.gridPos, p); 
     var evt = jQuery.Event('jqplotShiftClick'); 
     evt.pageX = ev.pageX; 
     evt.pageY = ev.pageY; 
     $(this).trigger(evt, [positions.gridPos, positions.dataPos, neighbor, p]); 
    } else { 
     var positions = getEventPosition(ev); 
     var p = ev.data.plot; 
     var neighbor = checkIntersection(positions.gridPos, p); 
     var evt = jQuery.Event('jqplotClick'); 
     evt.pageX = ev.pageX; 
     evt.pageY = ev.pageY; 
     $(this).trigger(evt, [positions.gridPos, positions.dataPos, neighbor, p]); 
    } 
};​ 

但在所有這些,還有就是涉及到一個點擊。我希望能夠產生相同的效果而不需要實際選擇點。

如果您有任何想法,請讓我知道。

+0

只需指出,唯一需要進入if/else的代碼行是賦值'evt'對象。我只是自己使用這個解決方案來處理輪班點擊,但清理它。 – Tony

回答