0
我想要做的是环状水平文本滑块。 我的尝试 - 显示文本结尾时,将此元素移动到右端并再次播放克隆元素的动画 - 但我无法实现该目的,因为由于某种原因克隆的元素不想进行动画制作。如何动画克隆的元素?
这是铬唯一的应用程序
这里是jsfiddle。
CSS
#elm {
width: 100px;
height:20px;
overflow: auto;
overflow-y: hidden;
position:absolute;
top:10px;
left:10px;
}
#elm::-webkit-scrollbar { width: 0 !important; height: 0 !important; }
#elm .inner-elm {
position:absolute;
white-space: nowrap;
}
HTML
<div id="elm">
<div class="inner-elm"> 11111111 2222222 333333 4444444</div>
</div>
JS
var elm_right = $('#elm').offset().left + $('#elm').outerWidth();
var settings = {
duration: 5000,
easing: 'linear',
step: function() {
var this_right = $(this).offset().left + $(this).outerWidth();
// make some clone
if(!$(this).hasClass('cloned') && ((this_right + 50) < elm_right)) {
$(this).addClass('cloned');
var clone = $(this).clone(true);
clone.addClass('cloned')
.css('left', $('#elm').width())
.appendTo('#elm')
.animate({right:100}, settings);
}
// remove parent
if((this_right - 20) < $('#elm').offset().left) {
$(this).remove();
}
}
};
var that = $('#elm .inner-elm');
that.animate({right: that.outerWidth()}, settings);
这不是我的情况下工作 - 我希望文本将被克隆,显示将近结束以后,在你的榜样,必须是充满隐患再次显示。我也想知道为什么克隆元素不能像普通的DOM那样播放动画。但是,谢谢你的回答! – Sojtin