(仅供参考,这是一个艺术项目,因此在网站上听起来不算合理)
我有一个jQuery代码,可以遍历dom,并向页面上的随机元素添加属性('bar')。我希望新元素在添加时滚动到视图中。我已经尝试了一些方法,最近使用了:eq()来识别页面上最后一个这样的元素,但没有骰子。
var last = $('[bar]').length;
$('html,body').animate({scrollTop: $('[bar]:eq('+last+')').offset().top }, 100);
尝试添加一个最小的可复制示例:https://stackoverflow.com/help/minimal-reproducible-example
这是我对您尝试做的事情的猜测:
var bar = ['one', 'two', 'three'];
var myInterval;
var myIndex = 0;
myInterval = setInterval(()=>{
$('html,body').animate({scrollTop: $('#'+bar[myIndex]).offset().top }, 1000);
myIndex +=1;
if (myIndex >= bar.length){
myIndex = 0;
}
},500)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="one" style="height:1200px; background:#ff0000"></div>
<div id="two" style="height:1200px; background:#0004ff"></div>
<div id="three" style="height:1200px; background:#00ff04"></div>
给我一些更多的源代码和描述,我可能会进一步提供帮助。
最好是如果您能分叉此代码笔:https://codepen.io/Alexander9111/pen/qBdrQLG,然后再共享它:)