jQuery 工具:工具提示、对“this”的 jQuery 引用属性

发布于 2024-12-18 11:04:36 字数 485 浏览 1 评论 0原文

我正在为表格中的单元格实现一个工具提示,并且我需要能够获取目标的 data-message 属性。

$("#pricing_plans_table .sku_tooltip").tooltip({

        // each trashcan image works as a trigger
        tip: '#' + $(this).attr('data-message'),

        // move tooltip a little bit to the right
        offset: [0, 15],

        // there is no delay when the mouse is moved away from the trigger
        delay: 0
    });

那是行不通的。我收到“无法找到 [object Object] 的工具提示”...我不太确定如何正确引用目标。

I'm implementing a Tooltip for cells within table and I need to be able to grab the target's data-message attribute.

$("#pricing_plans_table .sku_tooltip").tooltip({

        // each trashcan image works as a trigger
        tip: '#' + $(this).attr('data-message'),

        // move tooltip a little bit to the right
        offset: [0, 15],

        // there is no delay when the mouse is moved away from the trigger
        delay: 0
    });

That doesn't work. I get "Cannot find tooltip for [object Object]" ... I'm not quite sure how to reference the target correctly.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

唱一曲作罢 2024-12-25 11:04:36

我不确定您如何在 tooltip 插件中执行此操作,但是您可以使用 .each() 循环来获取值并初始化 tooltip code> 每个元素的插件(在内部,这就是插件可能做的所有事情):

$("#pricing_plans_table .sku_tooltip").each(function (index, value) {
    var $this = $(this);
    $this.tooltip({
        tip    : '#' + $this.attr('data-message'),
        offset : [0, 15],
        delay  : 0

    });
});

I'm not sure how you do this inside the tooltip plugin however you can use an .each() loop to get the value and initialize the tooltip plugin for each element (internally this is all the plugin probably does anyway):

$("#pricing_plans_table .sku_tooltip").each(function (index, value) {
    var $this = $(this);
    $this.tooltip({
        tip    : '#' + $this.attr('data-message'),
        offset : [0, 15],
        delay  : 0

    });
});
流殇 2024-12-25 11:04:36

我认为您不能在这样的地图中使用 this 。尝试:

$("#pricing_plans_table .sku_tooltip").each(function(i,el) {
    var tipstr = $(this).attr('data-message');
    $(this).tooltip({
        tip: '#' + tipstr,
        offset: [0, 15],
        delay: 0
    });    
});

I don't think you can use this inside a map like that. Try:

$("#pricing_plans_table .sku_tooltip").each(function(i,el) {
    var tipstr = $(this).attr('data-message');
    $(this).tooltip({
        tip: '#' + tipstr,
        offset: [0, 15],
        delay: 0
    });    
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文