我正在使用.offset();
从变量顶部计算一个值...
pos = content.offset();
但我的问题是我有一个在加载 twitter api 时运行的动画。
所以这意味着这个动画在触发之前大约有 2-5 秒的延迟。这个动画增加了我的content = $("#slider-container")
身高(大约 64 像素)。但有时如果 twitter 永远不会加载,那么动画将永远不会运行。
因此,当我在下面的脚本中使用此变量时,它会从 twitter 动画之前获取偏移值。即使动画已经运行。
正如你所看到的——我的第二个脚本,这是我的推特动画,它在推文加载时运行——并且$('#tweetbar')
在里面$("#slider-container")
我该如何排序?
我的剧本...
$(window).bind("resize.browsersize", function() {
var $tabs = $('#left-tab, #right-tab'),
positionScroll = $(window).height() / 2,
content = $("#slider-container"),
pos = content.offset();
$(window).scroll(function(){
if ( $(window).scrollTop() >= pos.top + 265 - positionScroll ) {
if ($(window).scrollTop() + positionScroll <= pos.top + content.height() - $tabs.height()) {
$tabs.removeAttr('style').css({ position:'fixed', top: positionScroll + 'px'});
} else {
$tabs.removeAttr('style').css({
top: content.height() - $tabs.height()
});
}
} else {
$tabs.removeAttr('style').css({ top: '265px' });
}
});
}).trigger("resize.browsersize");
我的动画脚本...
$("#tweetbar").tweet({
username: "twitter",
join_text: "auto",
count: 1,
auto_join_text_default: "we said,",
auto_join_text_ed: "we",
auto_join_text_ing: "we were",
auto_join_text_reply: "we replied to",
auto_join_text_url: "we were checking out",
loading_text: "loading tweets..."
}).bind("loaded", function(){
$('#tweetbar').slideDown();
});