1

http://jsfiddle.net/r2nzc/5/

var $textInput = $('#textInput');
var items = '.ui-autocomplete li.ui-menu-item a';

$textInput.autocomplete({
  source: ['a', 'b', 'c'],
  minLength: 0,
  open: function(){
    $('body').tooltip({
      items: items,
      content: 'Hello!'
    });

    $(items).mouseout(function(event){
        event.stopImmediatePropagation();
        $('body').tooltip('close');
    });
  }
}).focus(function(){
    $(this).autocomplete('search', '');
});

我正在尝试覆盖 jQuery UI 的工具提示自动关闭功能。我的意图是能够将鼠标悬停在工具提示上而不关闭它,但尚未引入此功能。因此,我正试图破解它。

我的理解是我应该能够调用 event.stopImmediatePropagation 以防止工具提示在 mouseleave 事件后关闭。但是,这将使工具提示永远打开。所以,我需要手动关闭工具提示。

如果我在工具提示上调用“destroy”,我可以强制它立即关闭。这似乎是一个丑陋的解决方法,因为我没有很好地淡出工具提示。

不确定如何调试为什么关闭似乎不起作用。工具提示是否跟踪其内部状态?

4

0 回答 0