最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jQuery之選項卡的簡單實現(xiàn)

 更新時間:2014年02月28日 08:57:04   作者:  
本篇文章主要是對jQuery 選項卡的簡單實現(xiàn)進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助

jQuery實現(xiàn)選項卡功能。首先將界面搭建好。

有導(dǎo)航頭tab_menu,還有內(nèi)容tab_box。

要實現(xiàn)的效果就是,點擊后,將相應(yīng)的內(nèi)容顯示出來,其他內(nèi)容隱藏掉。

同時為了展現(xiàn)選中狀態(tài),為選中的項添加背景,以示區(qū)別。

這一次,我自己寫了代碼,先看html部分:

復(fù)制代碼 代碼如下:

<div class="tab">
    <div class="tab_menu">
        <ul>
            <li class="selected">時事</li>
            <li>體育</li>
            <li>娛樂</li>
        </ul>
    </div>
    <div class="tab_box">
         <div>時事</div>
         <div class="hide">體育</div>
         <div class="hide">娛樂</div>
    </div>
</div>

html中,需要一個大的div,里面有兩個子div,一個作為導(dǎo)航頭tab_menu,一個作為內(nèi)容體tab_box。css代碼負責布局html內(nèi)容。

css部分:

復(fù)制代碼 代碼如下:

*{
margin:0;
padding:0;
}
.tab{
    width:240px;
    margin:50px;
    /*border:1px solid;*/
}
.tab_menu{
    clear:both;
}
.tab_menu li{
    float:left;  //將導(dǎo)航頭左飄
    text-align:center;  //將文字居中
    list-style:none;  //去除標記符號
    background:#F1F1F1; //設(shè)置默認背景色
    border:1px solid #898989; //設(shè)置邊框色
    margin-right:4px; //每個li之間的距離為4px
    cursor:pointer;  //鼠標浮上之后,會有小手的標示出現(xiàn)
    padding:1px 6px; //控制li的內(nèi)部距離
    border-bottom:none;

}
.tab_menu li.hover{
    background:#DFDFDF;
}
.tab_menu li.selected{//為選中的選項加背景與顏色
    color:#FFF;
    background:#6D84B4;
}
.tab_box{
    clear:both; //清楚float效果的影響
    height:100px; //設(shè)置高度為100px
    border:1px solid #898989; //設(shè)置內(nèi)容體的邊框樣式
}
.hide{//隱藏需要隱藏的內(nèi)容div
    display:none;
}

待布局完成之后,進行jQuery的動作:
復(fù)制代碼 代碼如下:

<script type='text/javascript'>
$(function(){
    //1.點擊時改變css屬性,移除之前的selected選項,添加新的selected選項
    //2.隱藏之前的div層,顯示對應(yīng)得div層
    //為導(dǎo)航中的li注冊點擊事件
    var $div_li = $(".tab_menu ul li");
    $div_li.click(function(){
        $(this).addClass('selected').siblings().removeClass('selected');
        //var index = $div_li.index(this);
        //$("div.tab_box > div").eq(index).show().siblings().hide();
        var text = $(this).text();
        if(text=='時事')
        {
            $('.tab_box div:contains("時事")').removeClass('hide').siblings().addClass('hide');
        }
        if(text=='體育')
        {
            $('.tab_box div:contains("體育")').removeClass('hide').siblings().addClass('hide');
        }
        if(text=='娛樂')
        {
            $('.tab_box div:contains("娛樂")').removeClass('hide').siblings().addClass('hide');
        }
    }).hover(function(){
            $(this).addClass("hover");
        },function(){
            $(this).removeClass("hover");
        });
});
</script>

這是我寫的jQuery代碼,我的思路是,點擊選項卡時,添加selected樣式,同時移除兄弟選項卡的selected樣式。

再一個,如何才能觸發(fā)相應(yīng)的tab_box中的內(nèi)容的隱藏與顯示呢?

我發(fā)現(xiàn)了他們有相對應(yīng)的內(nèi)容,就是選項頭為“實事”的對應(yīng)的選項體也為“實事”,選項頭為“體育”的對應(yīng)的選項提也為“體育”等。

我就想,先獲取選項頭的內(nèi)容,做出判斷,當它為不同的值時,就觸發(fā)不同的效果。

效果是實現(xiàn)了,可是漏洞很明顯,因為并不是所有的選項卡都是標題與內(nèi)容體相對應(yīng)。

再看看下面的代碼:

復(fù)制代碼 代碼如下:

<script type="text/javascript" >
//<![CDATA[
    $(function(){
        var $div_li =$("div.tab_menu ul li");
        $div_li.click(function(){
            $(this).addClass("selected")            //當前<li>元素高亮
                   .siblings().removeClass("selected");  //去掉其它同輩<li>元素的高亮
            var index =  $div_li.index(this);  // 獲取當前點擊的<li>元素 在 全部li元素中的索引。
            $("div.tab_box > div")       //選取子節(jié)點。不選取子節(jié)點的話,會引起錯誤。如果里面還有div
                    .eq(index).show()   //顯示 <li>元素對應(yīng)的<div>元素
                    .siblings().hide(); //隱藏其它幾個同輩的<div>元素
        })
    })
//]]>
</script>

這里的處理就特別的巧妙,它通過獲取li的索引,對選項體進行處理。它巧妙的利用了一個隱藏的對應(yīng)關(guān)系,就是索引值。

這樣即便選項頭與選項體內(nèi)容不對應(yīng),一樣可以實現(xiàn)聯(lián)動效果。

通過這次練習(xí),我覺得,自己先動腦子想一想還是很好的??梢园l(fā)現(xiàn)思路的差異,才能夠發(fā)現(xiàn)不足,知道差距。有時候甚至你的思路會更好呢!

相關(guān)文章

  • jQuery 中msgTips 頂部彈窗效果實現(xiàn)代碼

    jQuery 中msgTips 頂部彈窗效果實現(xiàn)代碼

    最近發(fā)現(xiàn)好多網(wǎng)站都采用頂部彈窗,并且不用用戶手動去點擊確定。感覺這樣很方便用戶,下面小編把實現(xiàn)代碼分享給大家,感興趣的的朋友一起看看吧
    2017-08-08
  • 基于jQuery的實現(xiàn)簡單的分頁控件

    基于jQuery的實現(xiàn)簡單的分頁控件

    分頁控件需要向后臺發(fā)送請求,發(fā)送的參數(shù)包括當前頁,每頁顯示數(shù)量,查詢條件;并且獲取數(shù)據(jù)加載到當前頁面
    2010-10-10
  • jQuery EasyUI中DataGird動態(tài)生成列的方法

    jQuery EasyUI中DataGird動態(tài)生成列的方法

    EasyUI中使用DataGird顯示數(shù)據(jù)列表中,有時需要根據(jù)需要顯示不同的列,例如,在權(quán)限管理中,不同的用戶登錄后只能查看自己權(quán)限范圍內(nèi)的列表字段,這就需要DataGird動態(tài)組合列,下面介紹EasyUI中DataGird動態(tài)生成列的方法
    2016-04-04
  • jQuery事件綁定方法學(xué)習(xí)總結(jié)(推薦)

    jQuery事件綁定方法學(xué)習(xí)總結(jié)(推薦)

    下面小編就為大家?guī)硪黄猨Query事件綁定方法學(xué)習(xí)總結(jié)(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • jquery與js函數(shù)沖突的兩種解決方法

    jquery與js函數(shù)沖突的兩種解決方法

    如果您想繼續(xù)使用原先的$(),同時還需要與別的類庫不沖突的話,下面由兩種方法,有類似需求的朋友可以參考下,希望對大家有所幫助
    2013-09-09
  • jQuery日歷插件datepicker用法詳解

    jQuery日歷插件datepicker用法詳解

    這篇文章主要為大家詳細介紹了jQuery日歷插件datepicker用法,感興趣的小伙伴們可以參考一下
    2016-03-03
  • jquery清空input標簽的值及清除標簽里面的內(nèi)容

    jquery清空input標簽的值及清除標簽里面的內(nèi)容

    這篇文章主要介紹了jquery清空input標簽的值,清除標簽里面的內(nèi)容,清除input標簽的值,可以通過直接將input標簽的值設(shè)置為空來實現(xiàn),本文通過示例代碼給大家介紹的非常詳細,需要的朋友參考下吧
    2023-10-10
  • jquery 插件學(xué)習(xí)(五)

    jquery 插件學(xué)習(xí)(五)

    一般對外發(fā)布的插件都應(yīng)該進行封裝,封裝的插件還應(yīng)該符合規(guī)范,只有這樣寫的插件才具有推廣價值,并得到其他用戶的喜愛
    2012-08-08
  • jquery easyui滾動條部分設(shè)置介紹

    jquery easyui滾動條部分設(shè)置介紹

    dialog并沒有隨著滾動條往下滾動,這時就需要用戶滑動滾動條來定位dialog,在說出解決方案前先來普及一下jquery關(guān)于定位的幾個方法
    2013-09-09
  • EasyUI框架 使用Ajax提交注冊信息的實現(xiàn)代碼

    EasyUI框架 使用Ajax提交注冊信息的實現(xiàn)代碼

    這篇文章主要介紹了EasyUI框架 使用Ajax提交注冊信息的實現(xiàn)代碼的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下
    2017-09-09

最新評論

绥江县| 江永县| 廉江市| 晋城| 泊头市| 游戏| 元阳县| 桦甸市| 教育| 贵州省| 桐城市| 塘沽区| 英吉沙县| 东源县| 西乌珠穆沁旗| 德安县| 宜城市| 重庆市| 沁源县| 芜湖县| 秦皇岛市| 仙游县| 朝阳县| 调兵山市| 巴东县| 镇赉县| 萍乡市| 上饶市| 安丘市| 苏尼特左旗| 淄博市| 包头市| 岳池县| 呼玛县| 观塘区| 丘北县| 尤溪县| 泾川县| 南和县| 会昌县| 兰溪市|