1

有没有办法将键盘事件绑定到jqPlot?我正在尝试仅使用左右箭头键将鼠标悬停在绘图上的点上。每个点也应突出显示。

我知道有一些方法可以单击,双击等。

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

我还实现了移位点击。

$('#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]);
    }
};​

但在所有这些中,都涉及到点击。我希望能够在不实际选择点的情况下产生相同的效果。

如果您有任何想法,请告诉我。

4

1 回答 1

0

我能想到的唯一方法是将事件附加/绑定keydownkeypress文档本身,并相应地对关键操作采取行动。

这被合并到此处提供的示例中。

不要忘记在结果框架内单击以使用键盘。

于 2012-06-16T12:10:47.543 回答