繁体   English   中英

jQuery UI工具提示何时算作初始化?

[英]When does a jquery UI tooltip count as initialized?

我正在使用自定义的jquery UI工具提示,效果很好。 现在,我想在工具提示显示之前有一个特定的元素需要延迟。 我使用show:{delay:1000}作为选项,也可以。 我在document.ready函数中定义了工具提示。

问题是,我找不到通过setter方法设置延迟选项的位置。 每当我尝试这样做时,都会出现错误“初始化前无法在工具提示上使用该方法”。 我当前的解决方法是使用选项集重新定义此元素的整个工具提示,这很难看。 在什么时候可以实际在已经定义的工具提示上使用二传手方法?

编辑以添加示例代码:

$(document).ready(function () {

    $('#selector1').tooltip({
        tooltipClass: 'myTooltip',
        content: function () {
           return genCustomContent();
        }
    });

    $('#selector1 #subElement').tooltip({
        tooltipClass: 'myTooltip',
        show: {delay : 1000},
        content: function () {
           return genCustomContent();
        }
    });
}

上面是我当前的解决方法代码的样子。 我没有明确地在其他任何地方调用该工具提示,因为我认为没有必要这样做。 现在,我想要的选项的设置器应如下所示:

$( "#selector1 #subElement" ).tooltip( "option", "show", {delay : 1000});

我尝试在$(document).ready()函数中的工具提示声明之后直接调用它,显然没有用。 我还尝试在其余代码的中间某个地方调用它,该代码在$(document).ready()运行正常之后才能很好地执行。 无论哪种方式,我都会收到错误消息。

我无法推断出真正的问题是什么。 但是我认为这与选择工具提示元素进行初始化的方式有关。

HTML

<button title="tooltip">normal</button>
<button id="delay" title="this has 1 s delay">delay button</button>

脚本

  $("[title]").tooltip({
         position: {
             my: "left+15 center",
             at: "right center"
         },
         show: false,
         hide: false
     });
     $("#delay").tooltip("option", "show", {
         delay: 1000
     });

看到这个演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM