本篇文章为大家展示了使用jQuery怎么实现一个时光轴效果,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
具体如下:
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>timeLine</title>
<style>
body{
margin: 0;
padding: 0;
background: #e8ffe8;
}
#head, #content, #footer{
width: 1000px;
margin: 0 auto;
}
#head{
text-align: center;
height: 100px;
line-height: 100px;
}
#footer{
clear: both;
text-align: center;
height: 30px;
line-height: 30px;
}
/*-----大标题-----*/
.bigElement{
clear: both;
position: relative;
}
.bigTitle{
font-size: 16px;
font-weight: bold;
height: 70px;
line-height: 70px;
background: #e8ffe8;
color: #635d5a;
}
.bigAction, .bigInfo{
float: left;
}
.bigAction{
border-right: 3px solid #635d5a;
text-align: right;
width: 220px;
}
.bigButtonSeeMore{
float: right;
width: 70px;
height: 70px;
text-align: center;
}
.bigButtonSeeMore > a{
text-decoration: none;
display: block;
color: #635d5a;
outline: none;
blr: expression(this.onFocus=this.blur());
}
.bigButtonSeeMore > a:hover{
color: #8cdbff;
}
.bigContent{
clear: both;
}
/*-----大标题end-----*/
/*-----小标题-----*/
.smallElement{
clear: both;
position: relative;
height: auto;
font-size: 16px;
background: #e8ffe8;
color: #635d5a;
}
.smallTitle{
text-align: right;
width: 220px;
}
.smallTitle, .smallContent{
float: left;
}
.smallContent{
border-left: 3px solid #635d5a;
}
.smallInfo{
margin-top: 20px;
text-indent: 40px;
}
/*-----小标题end-----*/
/*-----三角形-----*/
.bigTitleTrifonIconR{
border-color: #e8ffe8 #e8ffe8 #e8ffe8 #635d5a;
border-style: solid;
border-width: 7px;
width: 0;
height: 0;
font-size: 0;
position: absolute;
top: 28px;
left: 223px;
}
.smallTitleTrifonIconL{
border-color: #e8ffe8 #635d5a #e8ffe8 #e8ffe8;
border-style: solid;
border-width: 6px;
width: 0;
height: 0;
font-size: 0;
position: absolute;
top: 23px;
left: 208px;
}
/*模板*/
.hide{
display: none;
}
/*查看更多*/
.showMore{
clear: both;
text-align: center;
height: 70px;
line-height: 70px;
}
.showMore:hover{
cursor: pointer;
background: #FFEFDB;
color: #8cdbff;
}
</style>
</head>
<body>
<div id='head'>
<span>订单小助手:</span>
<input type='text' id='txtDoccode' />
</div>
<div id='content'>
<div class='timeLine'></div>
<div class='showMore'>查看更多</div>
</div>
<div id='footer'>footer</div>
<!-- 大标题模板 -->
<div class='hide' id='bigTitleTpl'>
<div class='bigElement'>
<div class='bigTitle'>
<div class='bigAction'>{bigAction} </div>
<div class='bigInfo'> {bigInfo}</div>
<div class='bigButtonSeeMore'><a href='javascript:;'>-</a></div>
</div>
<div class='bigTitleTrifonIconR'> </div>
<div class='bigContent'></div>
</div>
</div>
<!-- 详细信息模板 -->
<div class='hide' id='bigContentTpl'>
<div class='smallElement'>
<div class='smallTitle'>
<div class='smallTime'><br/>{smallTime} </div>
</div>
<div class='smallTitleTrifonIconL'> </div>
<div class='smallContent'>
<div class='smallAction'><br/> {smallAction}</div>
<div class='smallInfo'> {smallInfo}</div>
</div>
</div>
</div>
<script src="http://libs.baidu.com/jquery/1.8.0/jquery.js"></script>
<script>
var index = 0;
$(function(){
hqOrderNodeCreate();//总部下单
})
//总部下单
function hqOrderNodeCreate(){
var bigTitleData = {
bigAction: '总部下单',
bigInfo: ''
};
createBigTitle(bigTitleData, index);
}
//基地生产
function baseOrderNodeCreate(){
var bigTitleData = {
bigAction: '基地生产',
bigInfo: ''
};
createBigTitle(bigTitleData, index);
}
//仓库库存
function stockNodeCreate(){
var bigTitleData = {
bigAction: '仓库库存',
bigInfo: ''
};
createBigTitle(bigTitleData, index);
}
//发货
function delNodeCreate(){
var bigTitleData = {
bigAction: '发货',
bigInfo: ''
};
createBigTitle(bigTitleData, index);
}
//结算
function setNodeCreate(){
var bigTitleData = {
bigAction: '结算',
bigInfo: ''
};
createBigTitle(bigTitleData, index);
}
//生成大标题,一次生成一个
function createBigTitle(bigTitleData, index){
//生成大标题
$('.timeLine').append($('#bigTitleTpl').html()
.replace('{bigAction}', bigTitleData.bigAction)
.replace('{bigInfo}', bigTitleData.bigInfo)
);
//生成大标题下对应的内容
var bigContentData = [{
smallTime: '2010.10.11',
smallAction: '录单 ' + index,
smallInfo: '操作时间: 10:30:55'
},{
smallTime: '2010.10.15',
smallAction: '审核 ' + index,
smallInfo: '操作时间: 10:10:55'
},{
smallTime: '2010.10.15',
smallAction: '分发 ' + index,
smallInfo: '操作时间: 10:10:55'
}];
var bigContentTplStr = $('#bigContentTpl').html();
var str = '';
for(var i=0; i< bigContentData.length; i++){
str += bigContentTplStr.replace('{smallTime}', bigContentData[i].smallTime)
.replace('{smallAction}', bigContentData[i].smallAction)
.replace('{smallInfo}', bigContentData[i].smallInfo);
}
$('.bigContent:eq(' + index + ')').html(str).hide().slideDown(500);
}
//查看更多, 每次点击生成一个新的节点
$('.showMore').on('click', function(){
if($(this).text() === '查看更多'){
if(index === 0){
index++;
baseOrderNodeCreate();//基地生产
}
else if(index === 1){
index++;
stockNodeCreate();//仓库库存
}
else if(index === 2){
index++;
delNodeCreate();//发货
}
else if(index === 3){
index++;
setNodeCreate();//结算
$(this).text(' →_→ 没有记录了');
}
}
})
// + - 按钮 收缩效果
$(document).on('click', '.bigButtonSeeMore', function(){
var clickObj = $(this);
var bigContentObj = clickObj.parent().next().next();
if(clickObj.text() === '+'){
bigContentObj.slideDown(500, function(){
clickObj.html('<a href="javascript:;" rel="external nofollow" rel="external nofollow" ">-</a>');//切换图标
});
}
else if(clickObj.text() === '-'){
bigContentObj.slideUp(500, function(){
clickObj.html('<a href="javascript:;" rel="external nofollow" rel="external nofollow" ">+</a>');
});
}
})
</script>
</body>
</html>
上述内容就是使用jQuery怎么实现一个时光轴效果,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注天达云行业资讯频道。