0

我用 jquery ui 创建了工具提示并且正在工作。我将菜单附加到悬停功能中。但是如果我的鼠标光标在标题工具提示上,它正在关闭。

<script type="text/javascript">
    $(function(){
        $(".menu li div.altBurcT ul.altBurc li a").each(function(){
            $(this).tooltip({
                show: null,
                //track: true,
                position: {
                    my: "left top",
                    at: "left bottom"
                },
                open: function(event,ui){
                    ui.tooltip.animate({
                        top: ui.tooltip.position().top + 10
                    }, "slow");
                }
            });
        });

        $(".altBurcT").hide();
        $(".menu li.burc").hover(function(){
            $(this).find("> .altBurcT").stop(true,true).slideDown('slow'/*, 'easeOutBounce'*/);
        },function(){
            $(this).find("> .altBurcT").stop(true,true).hide();
        });
    });
</script>

我们如何解决这个问题?

谢谢你的兴趣。干得好..

附加

演示:jsfiddle.net/C7StJ

我添加了这是代码,现在没有关闭,但是如果我的鼠标不在,请不要关闭它:)

$(".menu li.burc").hover(function(){
    $(this).find("> .altBurcT").stop(true,true).slideDown('slow'/*, 'easeOutBounce'*/);
},function(){
    $(".altBurc li a").each(function(){
        if($(this).attr("aria-describedby").length < 1){
            $(this).find("> .altBurcT").stop(true,true).hide();
        }
    });
});
4

1 回答 1

1

在您的情况下悬停后在鼠标离开或回调时。检查是否.ui-tooltip存在,如果存在,请不要隐藏菜单。

$(".menu li.burc").on('mouseover', function() {
    $(this).find("> .altBurcT").stop(true,true).slideDown('slow'/*, 'easeOutBounce'*/);
}).on('mouseleave', function() {
    if(!($('.ui-tooltip').length > 0))
        $(this).find("> .altBurcT").stop(true,true).hide();
});

演示:jsFiddle

于 2013-11-11T19:34:32.827 回答