gpt4 book ai didi

javascript - 将单个 Dojo Tooltip 动态分配给多个节点

转载 作者:行者123 更新时间:2023-12-03 10:19:26 24 4
gpt4 key购买 nike

假设我们有一个带有节点列表(例如 div)的小部件。我们希望在鼠标悬停时显示 Dojo 工具提示。里面的元素是动态生成的,所以我们必须以编程方式添加工具提示。

策略是首先在 postCreate 期间定义一次 Tooltip,然后将其传递给处理函数,该函数将动态地将其添加到节点。

postCreate: function() {
var _this = this;
var fooTooltip = new Tooltip();

this.own(on(this, '.elements-container-item', function(e) {
lang.hitch(_this, 'onMouseOverHandler')(this, e, fooTooltip);
});
}

Tooltip 动态分配给鼠标悬停的元素的正确方法是什么?

onMouseOverHandler: function(node, e, fooTooltip) {
fooTooltip.set('connectId', [node]); // doesn't work
fooTooltip.set('label', 'foo label'); // doesn't work as well
}

最佳答案

您可以对工具提示执行类似的操作。请记住,您需要在小部件定义中 require dojo/query

postCreate: function() {
var _this = this;
var containerNode = this.domNode; // Assuming that the widget has a domNode

var fooTooltip = new Tooltip({
connectId: query('.list-container', containerNode ), // Search the Node starting at the containerNode.
selector: '.list-container-item',
getContent: function(matchedNode) {
console.debug('this is a tooltip for ', matchedNode);
}
});

}

关于javascript - 将单个 Dojo Tooltip 动态分配给多个节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29714275/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com