1
키보드 이벤트를 jqPlot
으로 바인딩 할 수 있습니까? 왼쪽 및 오른쪽 화살표 키만 사용하여 플롯의 점을 마우스 오버하려고합니다. 또한 각 지점을 강조 표시해야합니다. 내가 클릭하는 방법이 알고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]);
}
};
그러나이 모든에
는 관련 클릭이있다. 실제로 지점을 선택하지 않고 동일한 효과를 낼 수 있기를 바랍니다.아이디어가 있으면 알려 주시기 바랍니다.
if/else 안에 들어가야하는 유일한 코드 행은'evt' 객체의 할당입니다. 방금 시프트 클릭을 처리하기 위해이 솔루션을 직접 사용했지만 정리했습니다. – Tony