zoukankan      html  css  js  c++  java
  • 网页效果-简单的时间轴实现

    之前在网上看到,有很多人写的时间轴效果,于是自己也模仿着写了写。
    以下贴出自己写的解决方法(横向轴与纵向轴)。

    简单的时间轴效果容易实现,但如果需要看起来有模有样,就需要对页面进行设计布置了。

    1.利用Js加简单的界面布置,实现时间轴鼠标点击轮换图片效果(纵向)。

    实现思路:利用多个div加背景色做纵向时间轴的样式,用CSS进行定位布局(时间轴一般都相对于浏览器窗口位置进行定位,避免浮动),再加上相应的文字描述。(:after,:before等一样能实现其效果),最后在用Js添加一些简单的鼠标事件。

    HTML代码

    <div id="timeline">
            <div id="textout">
                <div class="text" onmousemove="movecolor(1)" onmouseout="outcolor(1)">云海</div>
                <div class="text" onmousemove="movecolor(2)" onmouseout="outcolor(2)">瀑布</div>
                <div class="text" onmousemove="movecolor(3)" onmouseout="outcolor(3)">古树</div>
                <div class="text" onmousemove="movecolor(4)" onmouseout="outcolor(4)">夕阳</div>
                <div class="text" onmousemove="movecolor(5)" onmouseout="outcolor(5)">大海</div>
            </div>
            <div id="lineout">
                <div class="line" id="l1" onmousemove="movecolor(1)" onmouseout="outcolor(1)"></div>
                <div class="line" id="l2" onmousemove="movecolor(2)" onmouseout="outcolor(2)"></div>
                <div class="line" id="l3" onmousemove="movecolor(3)" onmouseout="outcolor(3)"></div>
                <div class="line" id="l4" onmousemove="movecolor(4)" onmouseout="outcolor(4)"></div>
                <div class="line" id="l5" onmousemove="movecolor(5)" onmouseout="outcolor(5)"></div>
            </div>
        </div>
        <div id="picture"><img id="backgroundimg" src="img/pic1.jpg"></div>

    CSS代码

    #timeline{
                    position: fixed;
                    width: 100%;
                    height: 100%;
                    left:30px;
                    top: 180px;
                    
                }
                #textout{
                    width:35px;
                    float: left;
                    height: 100%;
                    margin-left: 20px;
                    padding-top:10px;
                    cursor:pointer;
                }
                #lineout{
                    width:4px;
                    height: 100%;
                    float: left;
                    margin-left: 5px;
                
                }
                .line{
                    width: 4px;
                    height: 50px;
                    background: #ccc; 
                    
                }
                .text{
                    width: 35px;
                    height: 50px;
                }
                #picture{
                    width: 1000px;
                    height: 500px;
                    margin-top: 50px;
                    margin-left:auto ;
                    margin-right:auto;
                    
                }

    JS代码:

    <script type="text/javascript">
                 function movecolor(num){
                     document.getElementById("l"+num).style.background = "#98E0FA" ;
                     document.getElementById("backgroundimg").src="img/pic"+num+".jpg";
                 }
                 function outcolor(num){
                     document.getElementById("l"+num).style.background = "#ccc" ;
                 }
     </script>

    效果图:

    2.利用Jquery加简单的界面布置,实现时间轴鼠标点击轮换图片效果(横向)。

    实现思路,利用一个div设置背景图片,做出横向时间轴的样式;在其中加入块级元素li,加入简单的背景图片,用来实现简单的时间节点效果;最后在用Jquery加上相应的鼠标事件,对其他的页面元素进行操作。

    HTML代码

    <body>
    <div class="clearfix course_nr">
        <ul class="course_nr2">
            <li>
                长城
                <div class="shiji">
                    <h1>长城</h1>
                </div>
            </li>
            <li>
                长江
                <div class="shiji">
                    <h1>长江</h1>
                </div>
            </li>
            <li>
                上海
                <div class="shiji">
                    <h1>上海</h1>
                </div>
            </li>
            <li>
                世博会
                <div class="shiji">
                    <h1>世博会</h1>
                </div>
            </li>
            <li>
                中国城
                <div class="shiji">
                    <h1>中国城</h1>
                </div>
            </li>
            <li>
                故宫
                <div class="shiji">
                    <h1>故宫</h1>
                </div>
            </li>
    
        </ul>
    </div>
    <div id="backgroundpic"></div>
    </body>

    CSS代码:

    .course_nr{
        width: 1100px;
        height:158px; 
        background:url(../img/ico1.gif) repeat-x center;
        margin-left: 120px;
        }
    .course_nr li{ 
        float:left; 
        background:url(../img/ico2.gif) no-repeat center top; 
        padding-top:30px; 
        width:140px; 
        text-align:center; 
        position:relative; 
        margin-top:65px;
        
        }
    .shiji{ 
        position:absolute; 
        width:100%; 
        left:0; 
        top:-20px; 
        display:none;
        }
    .shiji h1{ 
        height:67px; 
        line-height:67px; 
        color:#518dbb; 
        font-weight:bold; 
        background:url(../img/ico3.gif) no-repeat center top; 
        margin-bottom:8px;
        }
    .shiji p{ 
        line-height:14px; 
        color:#999;
        }
    #backgroundpic{
            width: 1000px;
            height: 500px;
            margin-top: -38px;
            margin-left: auto;
            margin-right: auto;
            background-image:url(../img/长城.jpg);
        }

    JS代码:

    <script type="text/javascript" src="js/jquery1.10.2.js"></script>
    <script type="text/javascript">
    $(function(){
        $('.course_nr2 li').hover(function(){
            $(this).find('.shiji').slideDown(600);
            var urltext = 'img/'+$(this).find('.shiji').text().trim()+'.jpg';
            $('#backgroundpic').css('background-image','url('+ urltext +')');
        },function(){
            $(this).find('.shiji').slideUp(400);
        });
    });
    </script>

    效果图:

  • 相关阅读:
    【codevs1227】方格取数2(最大流费最大流-模板
    【ZJOI2008】【BZOJ1033】杀蚂蚁(占坑待填
    python基础学习1-流程控制和判断
    python基础学习1-变量定义赋值,屏幕输入输出
    Jzoj5237 最长公共子序列
    Jzoj5236 利普希茨
    [置顶] 欢迎使用CSDN-markdown编辑器
    Jzoj5235 好的排列
    Jzoj5234 外星人的路径
    Jzoj5231 序列问题
  • 原文地址:https://www.cnblogs.com/yfsmooth/p/4605417.html
Copyright © 2011-2022 走看看