Jquery设置偏移量为0不起作用

时间:2013-03-12 19:14:30

标签: jquery css jquery-ui

我有一个工具提示,只有在未选中复选框时才会弹出按钮。我使用JQuery设置按钮相对于标签的位置。如果选中该复选框,我将隐藏工具提示,然后显示相同的上述情况。

    $('#chkbox').change(function(){
        if(($('#chkbox').attr('checked')=="checked") && $('#tooltip').is(':visible')==true){
            $('#tooltip').hide();
        }
});

    $('#Button').click(function(){  
        if(!($('#chkbox').attr('checked')))
        {
            var lbloffset = $('#Label').offset();
            $('#tooltip').offset({top:0,left:0});
            $('#tooltip').offset({top:lbloffset.top-25,left:lbloffset.left+$('#Label').width()});
            $('#tooltip').show();

        }
    });

工具提示隐藏在复选框上,但当我再次取消选中它并单击按钮时,它应显示工具提示与我清除$('#tooltip')相同的位置.offset({top:0,left:0 });位置并再次重置它。但这并没有发生,而是工具提示将新的偏移位置添加到旧的位置并将其显示在页面上的其他位置。我不确定为什么会这样。

1 个答案:

答案 0 :(得分:0)

您只需要设置.offset一次。我不清楚你想去哪里,但也许这就是你想要的:

var lbloffset = $('#Label').offset();
$('#tooltip').offset({top:lbloffset.top-25,left:lbloffset.left+$('#Label').width()});
相关问题