0
ハイチャートでは、シリーズのツールチップが表示されるまでに時間がかかることがあります。ハイチャート:表示前のツールチップの遅延
私はそれを実現するためのタイマーを備えた新しいリフレッシュ機能を定義しました。タイマーが準備できたら、私はマウスの位置を確認します。そうでなければ、ツールチップが表示されます。
function (H) {
var timer = [];
var mousePosition = {
x: 0,
y: 0
};
window.addEventListener("mousemove", function (event) {
mousePosition.x = event.pageX;
mousePosition.y = event.pageY;
});
var getMousePositionX = function() {
return mousePosition.x;
};
var clearTimer = function() {
timer = [];
}
H.wrap(H.Tooltip.prototype, 'refresh', function (proceed) {
var mousePosX = getMousePositionX();
var delayForDisplay = this.chart.options.tooltip.delayForDisplay ? this.chart.options.tooltip.delayForDisplay : 1000;
timer[timer.length+1] = window.setTimeout(function() {
var currMousePosX = getMousePositionX();
if ((mousePosX >= currMousePosX - 5 && mousePosX <= currMousePosX + 5)) {
this.proceed.apply(this.tooltip, this.refreshArguments);
clearTimer();
}
}.bind({
refreshArguments: Array.prototype.slice.call(arguments, 1),
chart: this.chart,
tooltip: this,
clearTimer: clearTimer,
proceed: proceed
}), delayForDisplay);
});
};
私が問題にしているのは、ホバーホロスにも遅延があることです。ここで
はサンプルです:この問題のJSFiddle
任意のソリューション?
私はこのことを願っています例はあなたの問題を手助けするかもしれません:http://jsfiddle.net/az39das8/ –
@GrzegorzBlachliński:それはまさに私が探していたものです。あなたは素晴らしいです:) – 1337
私の考えはあなたのために働いたことを読んで幸せ。私は答えとして投稿しました:) –