我正在尝试做一些与这里的问题非常相似(如果不一样的话)的事情(答案对我不起作用,似乎回答者/创建者不理解这个问题)。
我的目标是在具有不同触发选项的单个 html 元素上拥有两个提示工具提示实例:
- 一个将在
mouseenter
事件上触发(默认的,使用默认的tippy构造函数创建,根本不使用触发器选项),和 - 一个将在
click
事件中触发(使用触发选项manual
并随后调用tippyshow()
函数)。
我是这样做的:
var myelement = document.getElementById('myelementid');
// Default way of creating tippy tooltips
tippy(myelement, {
content: 'Shown on hover.'
});
// Creating a tooltip which will be triggered manually/programmatically
var mytippy = tippy(myelement, {
content: 'Shown on click.',
trigger: 'manual'
});
myelement.addEventListener("click", function() {
mytippy.show(300);
setTimeout(function(){ mytippy.hide(300); }, 1500);
});
由于某种原因,它根本不会在该元素上显示手动触发的工具提示。我得到了这个异常:(Uncaught TypeError: Cannot read property 'show' of undefined at HTMLImageElement.<anonymous>
指的是tippyshow()
函数)。但是当我删除其中一个(tippy 实例)时,另一个可以完美运行。