【问题标题】:text disrupts mouseover文本破坏了鼠标悬停
【发布时间】:2013-03-24 10:36:00
【问题描述】:

当光标悬停时,我会为 div 设置动画。
这适用于鼠标悬停(jquery)。
现在的问题是该 div 上的文本会中断动画,因为光标不再直接接触该 div。

我该如何解决这个问题?

//navi is the div.

    $("#navi").mouseover(function(){
        $("#navi").stop();
        $("#navi").animate({width:'200px'},{queue: false,easing:"easeOutBounce",duration:1200});
    });

相同的代码在 text-div 上。

你可以在这里测试http://jsfiddle.net/rSQaP/17/

只需在红色 div 动画时尝试 mouseover 和 mouseout。 动画将受到蓝色 div 上的鼠标悬停动作的影响。

【问题讨论】:

标签: jquery text mouseover


【解决方案1】:
$("#navi").mouseover(function(){

  $("#navi").stop().animate({width:'200px'},{queue: false,easing:"easeOutBounce",duration:1200});
  while($("#navi").is(":animated")){
    $("#navi").off('click').off('mouseover'); 
    //you can add all the events you want to ignore
    //if it doesn't work, use unbind instead of off
  };
  //re-enable these events
  $("#navi").on('click').on('mouseover'); //here you could use bind instead of on
});

【讨论】:

  • 我已经做过了(参见第一篇文章的编辑),但是当光标穿过字母时动画会卡住。
  • 它是一个在鼠标悬停时移出的导航面板。
  • 我尝试了while循环,但是我的浏览器崩溃了。问题显示在这里 (jsfiddle.net/rSQaP/13)。在 ie9 中它比在 Firefox 和 chrome 中工作得更好,所以我建议在 chrome 中尝试它。将鼠标指针保持在与文本相同的高度,同时在 div 上移动并且动画开始时将鼠标稍微向侧面移动。动画会受到鼠标移动的干扰。
猜你喜欢
  • 2013-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-08
  • 2011-08-04
  • 2018-09-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多