我想使用这个现有的js创建水平滚动条,这样我的数组滚动条将与我的页面上的其他单行新闻滚动条具有相同的动画和功能。通过阵列连续循环创建水平滚动条
目前,我的js将我的3个li变成了一个数组,然后将它们混合在一起并作为一个块在滚动条的宽度上滚动。
$(document).ready(function() {
var block_text = $('.ticker li').map(function() { return $(this).html();}).toArray();
$(".ticker").html("<p>" + block_text + "</p>");
var ticker_text = $('.ticker p');
var ticker_width = $(".ticker").width();
var text_x = ticker_width;
scroll_ticker = function() {
text_x--;
ticker_text.css("left", text_x);
if (text_x < -1 * ticker_text.width()) {
text_x = ticker_width;
}
}
setInterval(scroll_ticker, 10);
});
#iFeatures {
position: absolute;
width: 76%;
height: 73px;
left: 0;
bottom: 126px;
background-color: rgba(0,39,62,.85);
}
.ticker {
position: absolute;
top: 25%;
left: 40px;
right: 10px;
bottom: 10%;
overflow: hidden;
}
.ticker p {
position: relative;
top: 0;
white-space: nowrap;
width: auto;
color: white;
}
.ticker a {
color: white;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="iFeatures">
<div class="ticker">
<li><a href="##">This is a test ticker 1.</a></li>
<li><a href="##">This is a test ticker 2.</a></li>
<li><a href="##">This is a test ticker 3.</a></li>
</div>
</div>
演示,请参阅:https://jsfiddle.net/9va9r3n4/1/
我想要做的就是不断通过循环这个数组和动画的每个李以同样的方式为原始块正在动画。这是我尝试创建一个for循环来做到这一点,但它不起作用。 https://jsfiddle.net/9va9r3n4/
打开任何和所有的建议,可以帮助我实现这一点:
var myStringArray = $('.ticker li').map(function() { return $(this).html();}).toArray();
var arrayLength = myStringArray.length;
var ticker_width = $(".ticker").width();
for (var i = 0; i < arrayLength; i++) {
alert(myStringArray[i]);
//Do something
scroll_ticker = function() {
ticker_width--;
i.css("left", ticker_width);
}
setInterval(scroll_ticker, 10);
}
#iFeatures {
position: absolute;
width: 76%;
height: 73px;
left: 0;
bottom: 126px;
background-color: rgba(0,39,62,.85);
}
.ticker {
position: absolute;
top: 25%;
left: 40px;
right: 10px;
bottom: 10%;
overflow: hidden;
}
.ticker p {
position: relative;
top: 0;
white-space: nowrap;
width: auto;
color: white;
}
.ticker a {
color: white;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="iFeatures">
<div class="ticker">
<li><a href="##">This is a test ticker 1.</a></li>
<li><a href="##">This is a test ticker 2.</a></li>
<li><a href="##">This is a test ticker 3.</a></li>
</div>
</div>
正在进行演示在这里工作。
“downvote”的原因,描述? – guest271314
如果你仔细阅读了这个问题,虽然它很长,但并没有说有任何垂直滚动。它说'不断地循环播放这个数组并为每一个元素赋予动画,就像原始块被动画一样。你甚至没有读过这个问题! –
@RaeenHashemi是的,你是对的。阅读问题。不确定为什么,在这里如何解释“垂直”。感谢您提供“downvote”原因,说明! – guest271314