我在让hoverIntent正常工作方面遇到了一些问题。
问题不断出现:
偶尔会出现不透明度,且尺寸错误。它似乎已经在slideUp() - part的最后阶段被冻结了。我必须刷新页面以使其正常工作......
$(".info").hoverIntent({ over: show, out: hide }); function show(){ if($("#inndato").html() == " ") { // To give the popup-div position close to the mouseover-div var position = $(this).position(); $("#arrinfo").css( { "left": (position.left + $(this).width()) + "px", "top":position.top + "px", "position":"absolute" } ); $("#arrinfo").html(ajax_load).load(loadUrl); $("#arrinfo").show(); } } function hide(){ $("#arrinfo").stop().slideUp("fast"); }
我有很多div(日历 - >天),分配给info-class的那些应该使用id #inndato激活pop-up-div。
答案 0 :(得分:0)
我认为最终的物理.show()可以在Ajax返回之前执行。我将你的Show()函数移动到.load()调用的'success'部分。我做了一个假设'ajax_load'是返回的结果,并且是你的错字。如果'ajax_load'变量出现问题,我道歉,你可以告诉我。
function show(){
if($("#inndato").html() == " ") {
// To give the popup-div position close to the mouseover-div
var position = $(this).position();
$("#arrinfo").css( { "left": (position.left + $(this).width()) + "px", "top":position.top + "px", "position":"absolute" } );
//below duplicates the work of 'load', unless something special is in ajax_load //that i don't know about
//$("#arrinfo").html(ajax_load).load(loadUrl);
//i think you mean this
$("#arrinfo").load(loadUrl, function(data,text,xhr){
//$("#arrinfo").show(); but try below first...
$(this).show();
});
}
}