hoverIntent的各种速度问题

时间:2011-02-08 21:58:47

标签: jquery hoverintent

我在让hoverIntent正常工作方面遇到了一些问题。

问题不断出现:

  • 通常,当我更改为另一个div时,鼠标悬停不会显示悬停。如果我稍微移动它,它将不会出现。我必须将鼠标移到外面,然后再将鼠标移动到外面。
  • 偶尔会出现不透明度,且尺寸错误。它似乎已经在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。

1 个答案:

答案 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();
          });

        }
    }