为什么工具提示显示在左上角,而不是指针所在的位置?

时间:2016-11-01 16:16:55

标签: javascript css tableau tableau-server

我在asp.net应用程序中嵌入的所有视图都显示了viz左上角的工具提示,而不是鼠标悬停的位置。我该如何修复/改变这个? 我希望盒子出现在手/鼠标旁边。在某些情况下,我无法在弹出窗口中选择选项,因为它离鼠标太远,当您将其移动到框中时,它不再悬停在项目上并且框关闭。

它为该位置设置为零,如何才能使用鼠标位置?

<div class="tab-tooltip tab-widget tab-tooltipBR" style="left: 0px; top: 0px; display: block; -webkit-user-select: none; -webkit-tap-highlight-color: transparent; ">

我尝试与iframe进行直接链接,但事情并没有发生。它只在使用可信连接并使用javascript将viz加载到div标签时执行此操作。

它也可以使用javascript直接链接加载,因此它与如何使用JS启动它有关。我从示例中获取了代码,因此我不确定会出现什么问题。

<div id="tableauViz" style="width:100%; height:100%; min-height:900px"></div>

if(viz) viz.dispose();
var placeholderDiv = document.getElementById("tableauViz");
var url = 'https://#####.com/trusted/' + ticket + _tabpath;
var options = {
                width: placeholderDiv.scrollWidth,
                height: placeholderDiv.scrollHeight,
                hideTabs: false,
                hideToolbar: true,
                onFirstInteractive: function () {
                    workbook = viz.getWorkbook();
                    activeSheet = workbook.getActiveSheet();
                    //apply filters ....
                     }
               }
viz = new tableauSoftware.Viz(placeholderDiv, url, options);

我从项目中移除了所有css,它仍然在左上角加载。

https://community.tableau.com/thread/218147

1 个答案:

答案 0 :(得分:1)

我在我的示例中使用了jQuery,但也可以使用常规JavaScript。

这里的事情是你想要在文档准备好之后以及服务器正在设置的CSS上设置tooltip元素的CSS。为此,我们将使用以下jQuery代码(请记住,必须在文档就绪时进行):

typename T::inner

我将为您提供所有代码的小提示,以便您可以看到它是如何工作的:https://jsfiddle.net/emwovbmv/55/(检查行为将鼠标移动到灰色方块内)。

Mousemove比mouseenter更具侵入性,但它会一直跟踪您的鼠标位置,以便工具提示相应地移动。

告诉我它是否适合你,或者你有任何疑问。