【Jquery大事件时间线】jquery实现大事件时间线(时间轴)的滚动切换效果『附完整源码』
以下是一个使用jQuery实现的简单的大事记时间线滚动切换效果的示例代码。这个示例仅包含基础功能,没有包含进度条、滑动动画等复杂交互,但足以展示时间线的基本原理。
HTML部分:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Timeline</title>
<link rel="stylesheet" href="style.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<div class="timeline">
<div class="timeline-wrapper">
<div class="timeline-content">
<h3>1990</h3>
<p>Event 1</p>
</div>
<div class="timeline-content">
<h3>1995</h3>
<p>Event 2</p>
</div>
<div class="timeline-content">
<h3>2000</h3>
<p>Event 3</p>
</div>
<!-- More contents... -->
</div>
</div>
<button id="prev">Previous</button>
<button id="next">Next</button>
<script src="script.js"></script>
</body>
</html>
CSS部分(style.css):
.timeline {
position: relative;
width: 80%;
margin: 0 auto;
}
.timeline-wrapper {
position: relative;
width: 100%;
overflow: hidden;
}
.timeline-content {
position: absolute;
width: 100%;
opacity: 0;
transition: opacity 0.5s, left 0.5s;
}
.timeline-content.active {
opacity: 1;
}
JavaScript部分(script.js):
$(document).ready(function() {
var currentIndex = 0;
var items = $('.timeline-content');
function showItem(index) {
items.removeClass('active');
items.eq(index).addClass('active');
}
$('#next').click(function() {
if (currentIndex < items.length - 1) {
currentIndex++;
showItem(currentIndex);
}
});
$('#prev').click(function() {
if (currentIndex > 0) {
currentIndex--;
showItem(currentIndex);
}
});
showItem(currentIndex); // Show the first item
});
这个示例使用了一个简单的.active
类来控制内容的显示和隐藏,并使用jQuery的.eq()
方法来获取特定索引的元素。点击"Previous"按钮会显示上一个事件,点击"Next"按钮会显示下一个事件。这个实现没有使用进度条或滑动动画,但可以作为一个基础的时间线滚动切换效果的示范。
评论已关闭