2013-04-15 7 views

Antwort

9

Sie müssen - wie Sie es versucht haben - es mit CSS ändern. Sie haben vielleicht nicht die CSS Änderung auf der rechten Element anwenden, müssen Sie es .jqplot-Event-Leinwand anwenden:

$('#chart1').on('jqplotDataHighlight', function() { 
    $('.jqplot-event-canvas').css('cursor', 'pointer'); 
}); 

Bitte sehen ein funktionierendes Beispiel here

bearbeiten Fiddle und Code aktualisiert nach sdespont 's Kommentar.

PS Wie von Lukas Jelinek geschrieben, können Sie Standard-Zeiger neu zu definieren, wenn Sie Ihre Daten heben sie:

$('#chart1').on('jqplotDataUnhighlight', function() { 
    $('.jqplot-event-canvas').css('cursor', 'auto'); 
}); 
+1

Gute Antwort, aber verwenden. on() anstelle von .bind() was veraltet ist – sdespont

+0

Änderungen, die nach Ihrem Kommentar vorgenommen wurden. Prost – AnthonyLeGovic

+0

Beachten Sie, dass Sie zumindest für Liniendiagramme highlightMouseOver in den series_options auf true setzen müssen, sonst funktioniert diese Lösung nicht. – carruthd

1

Vielen Dank für Ihre Antwort.

Gleiche, was wir auch durch diese Art und Weise tun:

Cursor: { style: 'Zeiger', zeigen: true, showtooltip: false }

Aber ich möchte, dass die Cursor:“ Zeiger "sollte angezeigt werden, wenn er auf der Leiste und nicht auf dem gesamten Diagrammbereich steht.

2

Wie schrieb AnthonyLeGovic, binden sie mit:

$('#chart1').on('jqplotDataHighlight', function() { 
    $('.jqplot-event-canvas').css('cursor', 'pointer'); 
}); 

aber vergessen Sie nicht, es auch zu entbinden den normalen Cursor zu setzen, wenn Sie sich bewegen:

$('#chart1').on('jqplotDataUnhighlight', function() { 
    $('.jqplot-event-canvas').css('cursor', 'auto'); 
}); 
+0

Sie sollten Ihre Antwort bearbeitet haben und Ihre nicht gepostet haben. – Bora