zoukankan      html  css  js  c++  java
  • 基于jquery左侧带选项卡切换的焦点图

    今天给大家分享一款基于jquery左侧带选项卡切换的焦点图。这款焦点图左侧有短标题,单击切换并显示长标题。效果图如下:

    在线预览   源码下载

    实现的代码。

    html代码:

     <div class="film_focus">
            <div class="film_focus_desc">
                <h3>
                    标题1</h3>
                <ul class="film_focus_nav">
                    <li class="cur"><b>长标题1</b><span>短标题1</span> </li>
                    <li><b>长标题2</b><span>短标题2</span> </li>
                    <li><b>长标题3</b><span>短标题3</span> </li>
                    <li><b>长标题4</b><span>短标题4</span> </li>
                    <li><b>长标题5</b><span>短标题5</span> </li>
                </ul>
            </div>
            <div class="film_focus_imgs_wrap">
                <ul class="film_focus_imgs">
                    <li><a target="_blank" href="#">
                        <img src="images/a1.jpg" alt="标题1" /></a></li>
                    <li><a target="_blank" href="#">
                        <img src="images/a2.jpg" alt="标题2" /></a></li>
                    <li><a target="_blank" href="#">
                        <img src="images/a3.jpg" alt="标题3" /></a></li>
                    <li><a target="_blank" href="#">
                        <img src="images/a4.jpg" alt="标题4" /></a></li>
                    <li><a target="_blank" href="#">
                        <img src="images/a5.jpg" alt="标题5" /></a></li>
                </ul>
            </div>
        </div>

    css代码:

    * {
        margin:0;
        padding:0;
        list-style-type:none;
    }
    a, img {
        border:0;
    }
    body {
        font:12px/180% "微软雅黑", Arial, Helvetica, sans-serif;
    }
    /* film_focus */
    .film_focus {
        width:857px;
        height:340px;
        overflow:hidden;
        position:relative;
        margin:20px auto;
    }
    .film_focus .film_focus_imgs_wrap {
        background:url(images/load.gif) no-repeat center center;
    }
    .film_focus ul.film_focus_imgs {
        height:340px;
        height:9999em;
        position:absolute;
        right:0;
        top:0;
        overflow:hidden;
    }
    .film_focus ul.film_focus_imgs li {
        height:340px;
        overflow:hidden;
    }
    .film_focus ul.film_focus_imgs li img {
        height:340px;
        width:626px;
    }
    .film_focus .film_focus_desc h3 {
        height:45px;
        line-height:45px;
        overflow:hidden;
        position:absolute;
        left:232px;
        bottom:0;
        background:rgba(0, 0, 0, .5);
        color:#fff;
        width:100%;
        padding-left:20px;
        z-index:99;
        font-size:16px;
     filter:progid:DXImageTransform.Microsoft.gradient(enabled='true', startColorstr='#7F000000', endColorstr='#7F000000');
    }
    .film_focus ul.film_focus_nav {
        width:232px;
        height:340px;
        position:absolute;
        left:0;
        top:0;
        z-index:100;
    }
    .film_focus ul.film_focus_nav li {
        height:47px;
        background:#d7d7dc;
        margin:0px 0px 5px 0;
        padding:0px 18px 0 19px;
        position:relative;
        width:190px;
        cursor: pointer;
        cursor: hand;
        color:#333;
        font-weight:bold;
        font-size:14px;
        overflow:hidden;
        line-height:47px;
    }
    .film_focus ul.film_focus_nav li.cur {
        background:url(images/hd_on.png) no-repeat;
        width:190px;
        height:132px;
        left:0px;
        padding:0px 33px 0 25px;
        _background:url(images/hd_on.png) no-repeat 0 0;
        word-break:break-all;
        color:#fff;
        font-weight:bold;
        font-size:22px;
        overflow:hidden;
        line-height:30px;
    }
    .film_focus ul.film_focus_nav li b {
        display:none
    }
    .film_focus ul.film_focus_nav li b span {
        display:block
    }
    .film_focus ul.film_focus_nav li.cur b {
        display:block;
        vertical-align: middle;
        display: table-cell;
        height:132px;
    }
    .film_focus ul.film_focus_nav li.cur span {
        display:none
    }

    js代码:

      (function (A) {
                A.fn.th_video_focus = function (E) {
    
                    var G = {
                        actClass: "cur",
                        navContainerClass: ".focus_pic_preview",
                        focusContainerClass: ".focus_pic",
                        animTime: 600,
                        delayTime: 5000
                    };
    
                    if (E) {
                        A.extend(G, E)
                    }
    
                    var C = G.actClass, D = G.navContainerClass, B = G.focusContainerClass, F = G.animTime, H = G.delayTime, I = null;
    
                    return this.each(function () {
    
                        var O = A(this), M = A(D + " li", O), P = A(B + " li", O), L = M.length, K = O.height();
    
                        function N(R) {
                            var V = K * R * -1;
                            var U = A(B + " li", O), W = null, T = null;
                            for (var S = 0; S <= R; S++) {
                                W = U.eq(S);
                                T = W.find('script[type="text/templ"]');
                                if (T.length > 0) {
                                    W.html(T.html())
                                }
                            }
                            A(B, O).stop().animate({ top: V }, F, function () {
                                var Y = O.find("h3"), X = Y.height();
                                Y.height(0).html(A(B + " li").eq(R).find("img").attr("alt")).animate({ height: X }, 600)
                            });
                            A(D + " li").eq(R).addClass(C).siblings().removeClass(C)
                        }
    
                        function Q() {
                            if (I) {
                                clearInterval(I)
                            }
                            I = setInterval(function () {
                                var R = A(D + " li." + C).index();
                                N((R + 1) % L)
                            }, H)
                        }
    
                        O.hover(function () {
                            if (I) {
                                clearInterval(I)
                            }
                        }, function () {
                            Q()
                        });
    
                        var J = null;
    
                        M.hover(function () {
    
                            var R = A(this).index();
    
                            if (I) {
                                clearInterval(I)
                            }
                            J = setTimeout(function () {
                                N(R)
                            }, 300)
                        }, function () {
                            if (J) {
                                clearTimeout(J)
                            }
                            Q()
                        }).click(function (T) {
                            var R = A(this).index(), S = P.eq(R).find("a");
                            if (document.uniqueID || window.opera) {
                                S[0].click();
                                T.stopPropagation();
                                T.preventDefault()
                            }
                        });
    
                        Q()
    
                    })
                }
    
            })(jQuery);
    
            $(function () {
    
    
                $(".film_focus").th_video_focus({
                    navContainerClass: ".film_focus_nav",
                    focusContainerClass: ".film_focus_imgs",
                    delayTime: 3000
                });
    
            });    

    via:http://www.w2bc.com/Article/18416

  • 相关阅读:
    SharedPreferences 使用
    activity在activity上面
    组合组件
    浏览器的渲染原理
    Node 入门<1>
    css 样式优先级
    z-index
    事件代理
    XSS && CRLF && property&attribute
    webpack 学习笔记
  • 原文地址:https://www.cnblogs.com/liaohuolin/p/4248114.html
Copyright © 2011-2022 走看看