Простая JQuery UI Tooltip без атрибута заголовка

Я пытаюсь работать с jQuery UI Tooltip и думаю, что мне что-то не хватает.

Я хочу, чтобы отображалась самая простая подсказка без указания свойства title.

Я считаю, что я должен быть в состоянии назвать это практически в любом месте моего JavaScript:

$('#ContactName').tooltip({ content: 'Hey, look!' }).tooltip('open');

Это не работает. Я делаю что-то неправильно?

РЕДАКТИРОВАТЬ: я должен упомянуть, что #ContactName является входом [тип = текст], и это в диалоговом окне пользовательского интерфейса jQuery.

РЕДАКТИРОВАТЬ 2: Хорошо, это сработало. Хотя я не очень понимаю, почему.

$($('#ContactName').parent()).tooltip({
    items: '#ContactName',
    content: 'Hey, look!'
});

Работает при наведении. Могу ли я в том же коде сразу открыть его?

РЕДАКТИРОВАТЬ 3: Это то, что я закончил с:

            $($('#ContactName')).tooltip({
                items: '#ContactName',
                content: $(this).text(),
                position: {
                    my: 'left+15',
                    at: 'right center'
                },
                tooltipClass: 'ui-state-error'
            }).tooltip("open");

2 ответа

Решение

Когда вы устанавливаете content вариант, вам также может понадобиться указать items вариант.

Смотрите их документацию по API и этот пример jsFiddle

<span id="ContactName">Test</span>

$("#ContactName").tooltip({
    items: "span",
    content: "Awesome title!"
}).tooltip("open");

Это немного глупо, но когда items не работает для вас (скажем, вы делаете для нескольких селекторов одновременно), вы также можете установить заголовок на лету:

$($('#ContactName')).
        attr('title', '').
        tooltip({
            content: $(this).text(),
            position: {
                my: 'left+15',
                at: 'right center'
            },
            tooltipClass: 'ui-state-error'
        }).tooltip("open");
Другие вопросы по тегам