形势:
我的工具提示会出现在我的页面上。打开我的fancybox作品。从那个fancybox中执行ajax帖子可以工作。但我的工具提示在那个fancybox里行不通。他们在我的ajax帖子之后就不工作了。
我尝试用fancybox的回调重新初始化TipTip。
编辑标题更改,所以我找到了一种方法,让它在第二次悬停后,但不是在第一次悬停。
我也找到了一些解释,here,但它仍然没有解决我的问题。可能做错了。
编辑2图片集在fancybox工作只使用afterShow。
改变
将其添加到$(function () {)中,以便调用此函数而不是initTipTip。
$(".tooltip").live('mouseover', function () {
$(this).tipTip();
});我的函数的代码,它可以完成post并关闭我的fancybox。
var预订= MakeReservation();var oldDateSplit =$(“#resDate”).val(‘/’);var newDateSplit = $("#dateEditReservation").val().split('/');var oldDate =新日期(oldDateSplit2,oldDateSplit1 - 1,oldDateSplit);var newDate =新日期(newDateSplit2,newDateSplit1 - 1,newDateSplit);var time =$(“txtTime”);$.ajax({ url: ResolveUrl(‘~/订票/CheckSettings’),数据:"JSONString=“+订票+ "&hasJavaScriptMethod=”+真}).done(函数(数据)){ if (data.length == 0而经oldDate.getTime() == newDate.getTime()) { $.fancybox.close();var id = $("#reservationId").val();
函数() { initTipTip ();});initTipTip函数() { initTipTip();}),{ reservationId: id };$(“#initTipTip reservationList”).on(“悬停”,“.tooltip",函数(){$(此).tipTip();});}{$(“.errorDiv”).removeClass(“隐藏”);$(“.errorDiv”).html(数据);$(“.btnReservations”).removeAttr(‘禁用’);}
});
新 $(".tooltip").live('mouseover',函数() { $(this).tipTip();
});
}
仍然与编辑.之前相同。
TipTip的代码初始化
function initTipTip () {
$(".tooltip").tipTip();
}fancybox代码
function openFancy() {
$("a.inline").fancybox({
'type': 'ajax',
'afterShow': function () {
return initTipTip();
}
});
$("a.inlineBlockedDate").fancybox({
'type': 'ajax',
'ajax': { cache: false },
'afterShow': function () {
return initTipTip();
}
});
}发布于 2012-06-22 06:32:19
我找到了解决办法。
因此,我在$(function(){类似于我的问题中)中使用了我的.live,但是这里没有使用".tooltip“,而是使用了表本身。我在这里也使用initTipTip,而不是$( this ).tipTip();因此这解决了来自TipTip的工具提示。
解释:--这是因为tooltip.live只在第一次悬停时触发,而不是在表‘刷新’时触发。现在,在表的刷新中添加这个事件,如果我错了,请纠正我。
因此,在$( .tiptip (){)中不需要任何其他的InitTipTip或内容。
$("#reservationList").live('mouseover', function () {
initTipTip();
});我希望这个问题能解决你的问题。
https://stackoverflow.com/questions/11138441
复制相似问题