![](/img/trans.png)
[英]Bootstrap Tooltip NOT A FUNCTION when jQuery DataTables is initialized
[英]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.