我正在尝试通过滚动实现slideUp进入视图效果。这就像我们每天都使用的任何控制台(shell、浏览器 javascript、任何 REPL)一样,但带有一点动画风格。在小提琴中,我首先有一个所需效果的示例,然后是所需的overflow: scroll
第二个示例。
我一直无法让这两个部分一起工作。我在这里看到过类似的例子,但没有一个小提琴,也没有回答!
插图:http: //jsfiddle.net/n8tqw/
我正在尝试通过滚动实现slideUp进入视图效果。这就像我们每天都使用的任何控制台(shell、浏览器 javascript、任何 REPL)一样,但带有一点动画风格。在小提琴中,我首先有一个所需效果的示例,然后是所需的overflow: scroll
第二个示例。
我一直无法让这两个部分一起工作。我在这里看到过类似的例子,但没有一个小提琴,也没有回答!
插图:http: //jsfiddle.net/n8tqw/
这是一个非常有趣的谜题,但我终于让它工作了。本质上,您需要一个相对容器,它延伸到整个绝对容器的高度,然后拥有另一个具有设置高度(200px)的容器(相对或静态)。无论出于何种原因,浏览器都不认为“脱离顶部”的绝对内容位于滚动区域之外:
$('#add-one').click(function() {
var $p = $('<p class="content">' + number++ + '</p>')
.appendTo('#from-bottom');
$("#beholder").height($("#from-bottom").height());
$("#scrollable-container").scrollTop($("#beholder").height());
$p.hide().slideDown();
});
新段落不能立即隐藏,因为相关容器需要获取总高度,如果隐藏,则不会添加新段落的高度。同样,scrollable-container
的 scrollTop 如果隐藏起来会有点偏离。不过,最初不隐藏它似乎对用户来说是不明显的。