• 网页效果-简单的时间轴实现


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

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

    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>

    效果图:

  • 相关阅读:
    Linux 共享库
    使用Visual Studio(VS)开发Qt程序代码提示功能的实现(转)
    ZOJ 3469 Food Delivery(区间DP)
    POJ 2955 Brackets (区间DP)
    HDU 3555 Bomb(数位DP)
    HDU 2089 不要62(数位DP)
    UESTC 1307 windy数(数位DP)
    HDU 4352 XHXJ's LIS(数位DP)
    POJ 3252 Round Numbers(数位DP)
    HDU 2476 String painter (区间DP)
  • 原文地址:https://www.cnblogs.com/yfsmooth/p/4605417.html
Copyright © 2020-2023  润新知