我有一个工具提示,只有在未选中复选框时才会在单击按钮时弹出。我正在使用 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 });位置并再次重置它。但这并没有发生,而是工具提示将新的偏移位置添加到旧偏移位置并将其显示在页面的其他位置。我不确定为什么会这样。
最佳答案
您只需要设置一次.offset
。我不清楚你想要它去哪里,但也许这就是你想要的:
var lbloffset = $('#Label').offset();
$('#tooltip').offset({top:lbloffset.top-25,left:lbloffset.left+$('#Label').width()});
关于Jquery 将偏移量设置为 0 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15370114/