情况:
我的工具提示显示在我的页面上。打开我的fancybox作品。从那个fancybox 做ajax 帖子是可行的。但是我的工具提示在那个花式框中不起作用。在我发布 ajax 之后它们就不起作用了。
我尝试使用 fancybox 的回调重新初始化 TipTip。
编辑 标题更改所以我找到了一种方法让它在发布后的第二次悬停时运行,而不是在第一次悬停时运行。
我也在这里找到了一些解释,但它仍然没有解决我的问题。很可能是做错了。
EDIT 2 Tootip 在 fancybox 工作中仅使用 afterShow。
变化
在 $(function () { 中添加了这个,以便它调用这个函数而不是 initTipTip。
$(".tooltip").live('mouseover', function () {
$(this).tipTip();
});
我的函数的代码,它完成了发布的事情并关闭了我的幻想箱。
var reservation = MakeReservation(); var oldDateSplit = $("#resDate").val().split('/'); var newDateSplit = $("#dateEditReservation").val().split('/'); var oldDate = new Date(oldDateSplit[2], oldDateSplit[1] - 1, oldDateSplit[0]); var newDate = new Date(newDateSplit[2], newDateSplit[1] - 1, newDateSplit[0]); var time = $("#txtTime"); $.ajax({ url: ResolveUrl('~/Reservation/CheckSettings'), data: "JSONString=" + reservation + "&hasJavaScriptMethod=" + true }).done(function (data) { if (data.length == 0 || oldDate.getTime() == newDate.getTime()) { $.fancybox.close(); var id = $("#reservationId").val(); $("#reservationList").load(ResolveUrl('~/Reservation/reservationList',
函数 () { initTipTip(); })); $("#reservationDetail").load(ResolveUrl('~/Reservation/DetailInfo', function () { initTipTip(); }), { reservationId: id }); $("#reservationList").on("悬停", ".tooltip", function () { $(this).tipTip(); }); } else { $(".errorDiv").removeClass("hidden"); $(".errorDiv").html(数据); $(".btnReservations").removeAttr('disabled'); }
});
新 $(".tooltip").live('mouseover', function () { $(this).tipTip();
});
}
还是和修改前一样。
TipTip 的代码初始化
function initTipTip () {
$(".tooltip").tipTip();
}
花式盒子的代码
function openFancy() {
$("a.inline").fancybox({
'type': 'ajax',
'afterShow': function () {
return initTipTip();
}
});
$("a.inlineBlockedDate").fancybox({
'type': 'ajax',
'ajax': { cache: false },
'afterShow': function () {
return initTipTip();
}
});
}