簡體   English   中英

如何使用自舉工具提示檢測浮選中的相鄰項目

[英]How to detect adjacent items in flot using a bootstrap tooltip

我正在將啟動圖切換為使用引導工具提示。 我遇到了一個錯誤 ,即如果兩個項目靠在一起,則工具提示將不會跟隨。

拍打錯誤

如上圖所示,我將鼠標懸停在較低的數據點上,而引導工具提示仍停留在上方的數據點上。

我正在使用以下代碼。 我猜問題出在if(item) ,它在懸停時保持正確。 我當時正在考慮使用全局變量,但這似乎是一個混亂的解決方案。 有任何想法嗎?

placeholder.bind('plothover', function (event, pos, item) {

        if (item) {
            var x = item.datapoint[0],
                y = item.datapoint[1],
                label = item.series.label;

            box.css({
                top: item.pageY - 2,
                left: item.pageX + 1
            });

            if ($('.tooltip').length === 0) {
                box.tooltip({
                    placement: 'top',
                    title: label + ': ' + y
                }).tooltip('show');
            }
        } else {
            box.tooltip('destroy');
        }
    });

jsfiddle

用於存儲顯示工具提示的項目的全局變量是為此提供的默認解決方案,如下所示:

prevItem = null;
placeholder.bind('plothover', function (event, pos, item) {

    if (item) {
        if (prevItem != item.dataIndex + item.seriesIndex / 100) {
            prevItem = item.dataIndex + item.seriesIndex / 100;

            // show / update tooltip
        }
    } else {
        prevItem = null;
        box.tooltip('destroy');
    }
});

我試圖使這種方法在您的提琴中起作用,並且在大多數情況下都有效。 但是引導工具提示存在一些問題,有時無法正確更新文本。 始終銷毀並重新創建工具提示可以解決此問題,但會帶來閃爍。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM