【发布时间】:2011-05-05 21:18:27
【问题描述】:
我有一个工具提示,它的数据是通过 ajax 获取的。我的问题是我想调整框的高度以适应数据(只是一些标记)。
盒子是绝对定位的,我希望顶部的位置根据盒子的大小而改变,这样它的底部边框总是接触到下面的元素位置。
在 chrome 中,这工作正常。但在 Firefox 中,我似乎无法让它工作。我试图通过调用 .position().top 以及检索 css 值 .css('top') 来获取初始的顶部 css 值。两者都不适用于FF。我不知道该怎么办。
var popup=$('#saved_descr_wrap');
var cur_height=popup.height();
var cur_top=popup.css('top');
cur_top=parseInt(cur_top);
var entryHover = function(event){
var favorite_id=2;
popup.show();
// var fave_id=$(event.target).closest('tr').attr('data-postid');
$.get('{{Site}}/favorites/view/', {id:favorite_id}, function(data){
popup.find('img').hide();
$('#saved_note').text(data);
var new_height=popup.height();
var c=cur_top + cur_height - new_height;
popup.css('top', c);
});
};
var exitHover=function(event){
// popup.hide();
popup.css('top',cur_top);
$('#saved_note').text('');
popup.find('img').show();
};
$('tbody tr').hoverIntent({over:entryHover,out:exitHover});
这是我对 jQuery UI 的看法(也失败了):
var entryHover = function(event){
popup.position({my:"right bottom",at:"top right", of:"#main_box"});
popup.show();
var fave_id=$(event.target).closest('tr').attr('data-postid');
$.get('{{Site}}/favorites/view/', {id:fave_id}, function(data){
popup.find('img').hide();
$('#saved_note').text(data);
});
};
var exitHover=function(event){
popup.hide();
popup.position({my:"right bottom",at:"top right", of:"#main_box"});
$('#saved_note').text('');
popup.find('img').show();
};
$('tbody tr').hoverIntent({over:entryHover,out:exitHover});
【问题讨论】:
标签: javascript jquery ajax positioning