2010-10-20 43 views
1

我期待构建一个工具提示,允许用户单击该工具提示中的链接,以允许他们导航到网站的各个部分。我的问题是,当我用鼠标离开a时,工具提示消失了?我想是的,如果我换到一个新的a或单击关闭在提示工具提示消失,我的jQuery是如下目前,jquery创建一个不会消失的工具提示

$(document).ready(function() { 

    /* 
    * Rollover jobwall logo and show job tooltip 
    */ 
    $('ul#jobs li a').mouseenter(function(){ 
      var $this = $(this); 
      $this.addClass('active'); 
      $.ajax({ 
       type: 'POST', 
       url: '/jobwall/job_tooltip', 
       data: 'employer_id='+$(this).attr('rel'), 
       success:function(html) { 
        //alert($this); 
        $this.tooltip({ effect: 'slide'}); 
       } 
      }); 
     }).mouseleave(function(){ 
      $(this).removeClass 
      $('#tooltip').remove(); 
     }); 


}); 

我怎样才能让这个出现在鼠标的提示输入一个a按钮只有在用户通过点击关闭按钮关闭时才会消失,或者移动到新的a,以允许用户实际输入工具提示而不会消失。

+2

您希望工具提示保持专注,除非用户将注意力集中在锚点或工具提示本身。不要给我一个超出页面的工具提示,并让我执行一个行动离开。如果我在滚动时不小心将鼠标悬停在某个东西上,当它停留在页面上时,我会很生气。 – Chris 2010-10-20 19:48:21

+0

公平的评论,但我怎么会保持专注,直到我改变了一个我徘徊? – 2010-10-20 19:50:37

+0

也许找到工具提示扩展会比编写代码更容易。 (即:http://flowplayer.org/tools/tooltip/index.html) – Detect 2010-10-20 19:56:19

回答

0

$('#tooltip').remove();移动到mouseenter函数的顶部应该有所诀窍。当鼠标离开时,这不会移除工具提示,并且如果在输入新的a时存在该工具提示,它将被移除。
这里假设1)你已经有一个关闭功能,并且2)$('.active').append(html);创建了#tooltip

正如Chris评论的那样,这可能会让用户感到沮丧。