qtip jquery, Ghosts "Артефакты подсказки в DOM, как удалить - PullRequest
1 голос
/ 06 августа 2010

Я использую плагин qtip в полном календаре jquery (при двойном щелчке по событию).

Я создаю модальное окно всплывающей подсказки на своей странице. В этом окне всплывающей подсказки я загружаю некоторый контент ajax и вызываю некоторые функции (ссылки с привязанными событиями, пример удаления события из календаря), но я думаю, что это не проблема.

Если я открою всплывающую подсказку в первый раз, все в порядке. на втором и более дебютах мой jQuery-селектор (выбор по id) запускается два или более раз.

Я проверил сгенерированный код с помощью Webdeveloper-Toolbar из FireFox. Я видел все созданные всплывающие подсказки в DOM (каждый двойной щелчок создает всплывающую подсказку в DOM, поэтому у меня много копий). После закрытия всплывающей подсказки (стандартная функция всплывающей подсказки) всплывающие подсказки всегда присутствуют в DOM (каждое открытие всплывающей подсказки создает «призрак», невидимый, но мой селектор jquery находит его).

Я читал некоторые похожие проблемы, но я не понимаю решения.

как я могу удалить этих "призраков", потому что "призракам" нужна память для получения неопределенных результатов (например, более одного элемента с одинаковым идентификатором).

я пытаюсь, например: $ ( 'QTIP') удалить (). и другие подобные решения с $ (this) .parents ... и т.д. безрезультатно.

Или я называю удаление в неправильных местах. Первая попытка: удалите его из hideEvent из qTip Вторая попытка: дважды щелкните по событию в моем календаре. -> Нет эффекта в обоих.

Большое спасибо за решение.

Чичи

Большое спасибо за ответ.

1 Ответ

0 голосов
/ 19 января 2011

qTip это здорово, не нужно его удалять, сталкивайтесь с проблемой!

У меня была такая же проблема с qTip. Какую версию qTip вы используете? Переключитесь на qTip2! Это исправит эту проблему для вас.

Как сказал в своем комментарии Джанифен, я использовал

$('a.ppname[rel]').qtip({
   content : {stuff},
   style : {stuff},
   position: {stuff},
   show: 'mouseover',
   hide: 'mouseout',
   onHide: function() { $(this).qtip('destroy'); }
});

чтобы удалить qTip из DOM. qTip2 справится с этим для вас. Вот мой пример использования qTip2.

Дополнительные примеры: Демоверсии qTip2 .

...