1

凡例プラグインでJQPlotを使用して、凡例名をクリックしてシリーズの表示を切り替えています。

    legend: {
        show: true,
        placement: 'outsideGrid',
        renderer: $.jqplot.EnhancedLegendRenderer
    }

動作していますが、セリエが非表示の場合、セリエのツールチップは常に表示されます。シリーズがたくさんあり、1つを除いてすべてを非表示にしたい場合は、問題になります。非表示のシリーズのすべてのツールチップがマウスオーバーで表示されます。

ここに問題を説明するためのフィドルがあります:http://jsfiddle.net/Bouillou/WdLnm/284/

4

1 に答える 1

1

私はしばらく前にこのバグを経験しました。jqPlot Googleグループの私の投稿を参照してください: https ://groups.google.com/forum/?fromgroups#!searchin / jqplot-users / nickw / jqplot-users / PShgGTuXpeg / m3NPzEIWRscJ

基本的に、コードはイベントを発生させる前に各行が表示されているかどうかを確認しています。問題は、Javascript側で可視性が正しく処理されていないことです(CSSは問題ありません)。したがって、非表示のシリーズがまだ可視であると見なされる場所で発生している問題です。

私の解決策はs.show = s.canvas._elem.is(':hidden');Series.prototype.toggleDisplayメソッドを設定することでした。

これはバージョン1.0.4r1120以降で解決されたようです。より新しいバージョンに更新して、問題が解決するかどうかを確認してください。

于 2012-12-01T23:33:59.557 に答える