我正在使用 phonegap 制作一个 iPad 应用程序,在这方面我喜欢jquery.transit,它可以轻松地帮助我制作 css3 动画。
然而,我遇到了一个障碍。我正在制作一个在线列表,将在他们登录时添加新用户。在滚动页面时添加 DOM 元素没有问题,但是,当添加 css3 动画以“展开”元素时,动画仅在不滚动时有效。结果元素高度为:0;不会产生所需的高度:56px;在上面运行动画时。
- - 编辑 - -
看来这个问题与在其他 div 中滚动而不是运行动画有关。如果我滚动包含friendList(通过溢出自动修复)的div,它在滚动时工作正常。只有在滚动实际页面和 iOS 原生滚动时才会出现问题。
- - 编辑 - -
代码如下所示:
<ul class="friendList">
<li class="friendElement">
<div class="friendWrapper">
(content here)
</div>
</li>
</ul>
在哪里
.friendWrapper.entering{
height:0;
}
并在朋友登录时:
var $friendTemplate = (... appropriate template goes here ...);
function friendLogsOn(){
var $newFriend = $friendTemplate.clone(),
$friendList = $(".friendList"),
nmbElements = $friendList.children().length,
rand = Math.floor(Math.random()*nmbElements);
$newFriend.find(".friendWrapper").addClass("entering");
$newFriend.insertAfter($friendList.children().eq(rand));
$newFriend.find(".friendWrapper").transition({ height: '56px' },function(){
$(this).removeClass("entering");
});
}
我无法在用户滚动时让 jquery.transition 激活动画,有没有人有类似的经历?