如何检查JQuery UI工具提示?

时间:2013-09-15 18:11:13

标签: javascript google-chrome

我的页面上有一个默认的JQuery UI工具提示函数调用。有没有办法使用Inspector以交互方式设置工具提示div的样式?如果我有两个鼠标指针,一个将悬停在一个元素上以保持工具提示显示,第二个将使用Inspector并构建样式。但我只有一只鼠标,一旦它移出元素,工具提示就会消失。检查Inspector中的“:hover”状态没有帮助。鼠标移出时工具提示消失。

我正在使用Chrome,但任何浏览器中的任何技巧都可以。

9 个答案:

答案 0 :(得分:10)

我找到了一种解决方法,如何临时检查它:

只需实现隐藏工具提示逻辑的隐藏设置:

hide: {
          effect: "slideDown",
          delay: 20000
      }

这让你有20秒的时间来检查它。如果你需要更多时间,那就增加'#34;延迟"属性。 这是我的页面jquery工具提示的工作代码:

    $(function() {
    $(document).tooltip({
            tooltipClass: "jqueryTooltip",
            content: function() {
                return $(this).attr('title');
            },
            hide: {
                effect: "slideDown",
                delay: 20000
            }
        });
    });

完成检查后,只需删除延迟即可完成。

注意:我正在使用自定义类" jqueryTooltip"在检查后设置工具提示的样式。

答案 1 :(得分:5)

我在Firefox中的工作解决方案:
 1.将鼠标悬停在工具提示上(显示工具提示)
 2.点击CMD-Option-K(OSX)或CTRL-Shift-K(Windows),打开" Web控制台"
 3.键入"调试器" (这将阻止JS执行,因此工具提示不会消失)
 4.打开" Inspector"选项卡,搜索.ui-tooltip
 5.根据需要进行编辑。注意:即使停止执行JavaScript,对CSS的更改也会立即生效

答案 2 :(得分:4)

我参加晚会,但实际上有一种简单的方法可以实现这一目标。

在浏览器的开发控制台中,使用jQuery定位工具提示,如下所示:

$('.selector').tooltip('open');

就我而言,我的工具提示上有一个班级.grey-tooltip,所以我打电话给$('.grey-tooltip').tooltip('open');。这应该打开工具提示,然后您可以像检查任何其他可见元素一样检查它们。

您可以使用一个工具提示的不同方法在他们的文档中进行了描述:https://api.jqueryui.com/tooltip/

答案 3 :(得分:3)

简单的方法是在显示工具提示时用F8暂停js

答案 4 :(得分:1)

在Chrome中,请按照以下步骤操作: 1-打开开发人员工具(Ctrl + Shift + I)或(右键单击屏幕并选择检查)。

2-选择来源: Choose Sources

3-在右侧,您找到了手风琴,打开“事件监听器断点” Open "Event Listener Breakpoints"

4-您将找到所有事件,打开“ Mouse”,然后选择“ mouseout”事件,这将停止执行代码,并在“ mouseout操作”之前停止。 Open "Mouse", then Select "mouseout"

5-转到“应用程序”屏幕,然后尝试仅将具有工具提示的项目悬停,然后屏幕将冻结,并根据需要找到工具提示支架。 tooltip stand as you want

注意:如果错误地将鼠标悬停在其他项目上,则可以通过单击“恢复”(蓝色按钮)来继续执行代码,然后再次尝试将鼠标悬停。 如果要返回代码的正常执行,请取消选择“ mouseout”事件,然后单击“恢复”(蓝色按钮)。 selecting the blue button to resume the execution of code

与Firefox相同,“源”选项卡中的差异称为“调试器”。

答案 5 :(得分:0)

应该可以修改CSS,使得工具提示始终可见而不是仅悬停,此时您可以通过检查器调整div的样式,并查看它是如何实时影响的。

答案 6 :(得分:0)

如果您在最新的Google Chrome浏览器中打开开发人员工具,则应该会看到选中的元素标签。在你必须悬停在你的元素上,只需右键单击它并打开“强制元素状态”菜单以选择:悬停选项。

答案 7 :(得分:0)


您无法在浏览器的检查器中更改jQuery工具提示的样式,因为正如您所说,它在mouseout上从DOM中删除。

但是,使用以下代码,这是我更改样式所做的更改:

$("#myElement").attr({
    title: "my tooltip text"
}).tooltip();

$("#myElement").tooltip({
    // the .tooltip class is applied by default anyway
    tooltipClass: "tooltip"
});
  1. 在JavaScript中输入debugger;,在上一个代码

  2. 之前
  3. 在Firefox中,点击 F12 打开Firebug(如果没有,请下载)

  4. 选择脚本标签,然后点击重新加载

  5. 现在调试器已激活,请突出显示 来自第二个代码块的$("#myElement").tooltip没有括号),右键单击突出显示的文本,然后 选择Add Watch

  6. 在右侧窗口的观看标签下,点击 + $("#myElement").tooltip旁边展开所有属性

  7. 在扩展构造函数下,然后 DEFAULTS ,然后 模板,以查看工具提示的HTML


  8. 这是jQuery工具提示的公开HTML结构:

    <div class="tooltip">
        <div class="tooltip-arrow"> ... </div>
        <div class="tooltip-inner"> ... </div>
    </div>
    


    ...现在你可以应用CSS,如下所示:

    .tooltip {
        background-color: blue;
        border: 2px solid black;
        border-radius: 5px;
    }
    .tooltip-arrow {
        /* hackery, placing the arrow where it should be: */
        margin-bottom: -7px;
    }
    .tooltip-inner {
        /* hackery, making all browsers render the width correctly: */
        width: 300px;
        min-width: 300px;
        max-width: 300px;
    
        /* hackery, removing some unknown applied background: */
        background: none;
        background-color: none;
    
        color: white;
        text-align: center;
    }
    


    上面的CSS中提到的所有“ hackery ”是我必须要做的才能让Bootstrap与jQuery很好地配合(它们都有tooltip,这可能与每个都有冲突其他 - 请参阅https://stackoverflow.com/a/19247955了解更多信息)。

答案 8 :(得分:0)

这是我做的:

jQuery(".myDiv").attr("title", 'Hello');
jQuery(".myDiv").tooltip({close: function( event, ui ) {
  console.log(jQuery(ui.tooltip[0]).html());
}});

控制台内容是:

<div class="ui-tooltip-content">Hello</div>

另外,我在console.log函数上放置了一个断点,然后在</body>结束标记之前检查了页面结构,还有更多内容:

<div id="ui-tooltip-0" role="tooltip" class="ui-tooltip ui-widget ui-corner-all ui-widget-content" style="position: relative; top: -463.60003662109375px; left: 1px; display: block; opacity: 1;"><div class="ui-tooltip-content">Hello</div></div>

可以使用Inspector(在Chrome中测试)动态更改工具提示样式。