Инструменты jQuery: всплывающая подсказка, ссылка jQuery на атрибут this - PullRequest
0 голосов
/ 28 ноября 2011

Я реализую всплывающую подсказку для ячеек в таблице, и мне нужно иметь возможность получить атрибут цели 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
    });

Это не работает.Я получаю «Не могу найти всплывающую подсказку для [объекта объекта]» ... Я не совсем уверен, как правильно ссылаться на цель.

Ответы [ 2 ]

1 голос
/ 29 ноября 2011

Я не уверен, как вы делаете это внутри плагина tooltip, однако вы можете использовать цикл .each(), чтобы получить значение и инициализировать плагин tooltip для каждого элемента (внутренне это все, что плагин, вероятно, делаетв любом случае):

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

    });
});
0 голосов
/ 29 ноября 2011

Я не думаю, что вы можете использовать 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
    });    
});
...