首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jquery对于工具提示的声明

问Jquery对于工具提示的声明
EN

Stack Overflow用户
提问于 2014-01-08 03:04:08
回答 2查看 665关注 0票数 0

我有一个工具提示,当你鼠标点击一个链接。如果你悬停在上面(因为里面有链接之类的),我希望工具提示保持不变,或者如果你鼠标离开链接就会消失。我试过几样东西,但还没弄明白。这是我第一次用jQuery构建任何严肃的东西。

下面的内容是.hover() 'handlerOut‘事件中的内容。

代码语言:javascript
复制
if($(this.a).mouseout())
{
    if ($('.tip_container').hover()) {
        $('.tip_container').css('display', 'block');
        $('.tip_container').mouseleave(function() {
        $('.tip_container').remove(0);
    });
} else if ($('.tip_container').hover() == false && $(this.a).mouseoff() == true)
    {
        $('.tip_container').remove(0);
    }
}
>>"this.a" refers to the link<<

有了这个和其他的东西,我已经尝试过的工具提示不会消失,除非你鼠标从它的关闭。我也试过

代码语言:javascript
复制
else if (!$('.tip_container').hover() && $(this.a).mouseoff()) {

有可能有多种情况吗?

代码的主要思想是,如果您从链接“this.a.a”中滑落,工具提示将被移除:

代码语言:javascript
复制
$('.tip_container').remove(0);

但是,如果您鼠标在工具提示上,它将不会被删除,直到您鼠标离开工具提示。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-09 05:33:32

在好好休息了一段时间之后,我想出了一个解决办法。这就是我在悬停handlerOut事件中所放的内容。

代码语言:javascript
复制
 var timer;

 timer = setTimeout(function() {
           $('.tip_container').remove();
       }, 500);                     
           $( '.tip_container' ).hover(
       function() {
           clearTimeout(timer);
           $('.tip_container').css('display', 'block');
       }, function() {
           $('.tip_container').remove();
       }
    );

在悬停出链接时,它将等待执行删除,如果鼠标悬停在工具提示上方,它将清除计时器并将工具提示设置为块以保持其显示,然后将鼠标悬停在工具提示之外,它将被移除。

票数 0
EN

Stack Overflow用户

发布于 2014-01-08 03:21:50

你有小提琴或什么东西要演示吗?

也许就像

代码语言:javascript
复制
$(this, '.tip_container').hover(function () {
        $('.tip_container').show();
  }, function () {
        $('.tip_container').hide();
  }
);

基本上将链接和工具提示元素绑定到悬浮方法,该方法在mouseenter/mouseleave上隐藏/显示工具提示元素。在评论中发布的链接是一个很好的起点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20986242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档