Я использую плагин jquery cluetip и пытаюсь выяснить, как удалить любые открытые диалоги cluetip, как только я загружаю новый контент через ajax.Я либо застрял с диалоговыми окнами, которые по-прежнему отображаются поверх нового контента, либо способами, которые я пытался исправить, фактически убирают все будущие диалоги подсказок для показа вообще.
Вот мой код, спасибо за любую помощь.
Когда все готово, я создаю Cluetip, как показано ниже.
//activate cluetip
$('a.jTip').cluetip({
attribute: 'href',
cluetipClass: 'jtip',
arrows: true,
activation: 'click',
ajaxCache: false,
dropShadow: true,
sticky: true,
mouseOutClose: false,
closePosition: 'title'
});
Когда я загружаю новый контент, у меня есть следующий код.У меня проблема в том, что $ ('. Cluetip-jtip'). Empty () препятствует открытию диалоговых окон для любого нового загруженного контента, в то время как функция destroy не удаляет все открытые диалоговые окна, а просто уничтожаеттекущий объект.
$('.next a').live("click", function(){
var toLoad = $(this).attr('href');
var $data = $('#main_body #content');
$.validationEngine.closePrompt('body'); //close any validation messages
$data.fadeOut('fast', function(){
$data.load(toLoad, function(){
$data.animate({
opacity: 'show'
}, 'fast');
//reinitialise datepicker and toolip
$(".date").date_input();
//JT_init();
$('.hidden').hide();
//scroll to top of form
$("html,body").animate({
"scrollTop": $('#content').offset().top + "px"
});
//remove existing instance
//$('a.jTip').cluetip('destroy');
//remove any opened popups
$('.cluetip-jtip').empty();
//reinitialise cluetip
$('a.jTip').cluetip({
attribute: 'href',
cluetipClass: 'jtip',
arrows: true,
activation: 'click',
ajaxCache: false,
dropShadow: true,
sticky: true,
mouseOutClose: false,
closePosition: 'title'
});
});
});
return false;
});