Почему этот JavaScript не работает? - PullRequest
1 голос
/ 10 ноября 2010

Я использую плагин qTip 1.0.0-rc3 для jQuery. И хотя это не имеет большого значения, мне любопытно, почему это работает:

$(document).ready(function() {
    if (jQuery().qtip) {
        $('[data-qtip]').each(function() {
            var qTipContent = $(this).attr("data-qtip");
            $(this).qtip({ content: qTipContent });
        });
    }
});

и это не работает:

$(document).ready(function() {
    addToolTips();
});

function addToolTips() {
    if (jQuery().qtip) {
        $('[data-qtip]').each(function() {
            var qTipContent = $(this).attr("data-qtip");
            $(this).qtip({ content: qTipContent });
        });
    }
};

Первый вызывается внутри функции, а второй - нет. Вот сообщение об ошибке от Firebug:

f(this).data("qtip") is null

Я уверен, что это что-то глупое, но чего мне не хватает?

Спасибо.

Ответы [ 3 ]

1 голос
/ 10 ноября 2010

Код, который вы дали, выполняется ли он в «глобальной области видимости» или заключен в {и} (в другую функцию или что-то в этом роде)?

1 голос
/ 10 ноября 2010

Ух ты, я чувствую себя глупо. Я только что обнаружил скрытый конфликт в другом из моих локальных файлов. Я знал, что все выглядело правильно! Спасибо за помощь.

0 голосов
/ 10 ноября 2010

Попробуйте передать this в addToolTips () в качестве параметра.

...