я делаю небольшую подсказку для моего сайта
у меня это отлично работает: (при наведении на пункт проверки, если существует пузырь и показывает его. Если нет, делает запрос, добавляетbuble, а затем показать его)
$('.profileIcon').hover(function(){
var u = $(this);
var url = $(this).find('a').attr('href')+' #intro_usuario';
if($(this).find('.nube').length>0){
$(this).find('.nube').show();
} else {
//$('<div>').load(url).addClass('nube').css({'left':$(this).offset().left+$(this).outerWidth(true)+15,'top':$(this).offset().top}).appendTo(this).show();
$('<div>').addClass('nube').addClass('nubeU').load(url,function(){
$(this).css({'left':-20,'top':-16}).appendTo(u).show();
});
}
});
Это только сделало бы запрос и добавило бы всплывающую подсказку (.nube) div при первом наведении курсора на пользователя, в следующий раз он будет отображаться (без запроса)
Но при загрузке большего количества элементов с помощью ajax мне пришлось вспомнить его, поэтому я подумал об использовании live
$('.profileIcon').live('hover',function(){
var u = $(this);
var url = $(this).find('a').attr('href')+' #intro_usuario';
if($(this).find('.nube').length>0){
$(this).find('.nube').show();
} else {
//$('<div>').load(url).addClass('nube').css({'left':$(this).offset().left+$(this).outerWidth(true)+15,'top':$(this).offset().top}).appendTo(this).show();
$('<div>').addClass('nube').addClass('nubeU').appendTo(u).html($('#load').html()).load(url,function(){
$(this) .css({'left':-20,'top':-16}).show();
});
}
});
запрос выполняется каждый раз и каждый раз, когда добавляется дополнительный пузырь
Вопрос в следующем:
¿почему if($(this).find('.nube').length>0
перестал работать, используя live?