jQuery 指定区域的内容循环滚动
需求:页面指定区域内的内容循环滚动,但是内容形式、高度都不固定,是接口从编辑器提取出来的内容。
代码:
<div id="container5">
<div class="content" id="f12red1">
自2023年9月20日24时起,国内汽、<br>柴油价格(标准品,下同)每吨分别提高70元。<br>
自2023年9月21日凌晨起,<br>全国加油站统一上调零售价格,<br>调价金额为:汽柴油、分别提高385元和370元,<br>从全国平均来看。<br>
92#汽油 上调 0.30元/升<br>
95号汽油 上调 0.32元/升<br>
0#柴油 上调 0.31元/升<br>
按照此上调幅度计算,<br>加满一箱容量在50L的92号汽油,<br>车主可以要多花15元左右。<br>
国家通知:<br>根据近期国际市场油价变化情况,<br>按照现行成品油价格形成机制,<br>自2023年9月20日24时起,<br>国内汽、柴油价格(标准品,下同)每吨分别提高385元、370元。<br>调整后,<br>各省(区、市a)和中心城市汽、柴油最高零售价格见附表。<br>相关价格联动及补贴政策按现行规定执行。<br>
中石油、中石化、中海油三大公司要组织好成品油生产和调运,<br>确保市场稳定供应,严格执行国家价格政策。<br>各地相关部门要加大市场监督检查力度,<br>严厉查处不执行国家价格政策的行为,<br>维护正常市场秩序。<br>消费者可通过12315平台举报价格违法行为。<br>
<img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2023%2F0921%2F0a2dd1c2j00s1b9y400e4d200u0016gg00it00ql.jpg&thumbnail=660x2147483647&quality=80&type=jpg">
</div>
</div>
css:
#container5{
border: 1px yellow solid;
width: 1000px;
height: 800px;
font-size: 32px;
line-height:50px;
overflow: hidden;
padding:20px;
}
js:
$(document).ready(function() {
// 获取页面高度
var pageHeight = $("#f12red1").height();
// 设置滚动的初始位置
var scrollPosition = 0;
// 设置滚动的速度
var scrollSpeed = 1; // 每50毫秒滚动一次
// 定义滚动函数
function autoScroll() {
// 计算下一次滚动的位置
scrollPosition += 1;
// 如果滚动到页面底部,将滚动位置重置为0,重新开始滚动
if (scrollPosition >= pageHeight) {
scrollPosition = 0;
}
// 使用animate函数实现滚动效果
// $("#container5").animate({scrollTop: scrollPosition}, scrollSpeed );
$("#container5").animate({ scrollTop: scrollPosition }, scrollSpeed, 'linear', function() {
if (scrollPosition === 0) {
autoScroll();
}
});
}
// 设置定时器,每50毫秒触发一次滚动函数
setInterval(autoScroll, scrollSpeed);
});