網(wǎng)頁(yè)制作實(shí)例:CSS3+jQuery制作搜索條

字號(hào):


    搜索條在網(wǎng)站中是必不可少的,尤其是在有限的頁(yè)面空間里,放置一個(gè)重要的搜索條是個(gè)難題,今天我將結(jié)合實(shí)例給大家介紹一下如何使用CSS3和jQuery來實(shí)現(xiàn)一個(gè)可伸縮功能的搜索條。
    HTML
    在需要放置搜索條的頁(yè)面中放置如下html代碼,搜索條#search_bar包含一個(gè)form#myform表單,表單中放置一個(gè)搜索輸入框#search,一個(gè)搜索按鈕.search_btn以及搜索按鈕圖標(biāo).search_ico。
     <div id="search_bar"> 
        <form id="myform"> 
            <input placeholder="想搜點(diǎn)什么呢..." 
             type="text" name="key" id="search"> 
            <input type="submit" value=""> 
            <span></span> 
        </form> 
    </div>
    CSS
    我們通過CSS來將整個(gè)搜索條布局美化,其中我們使用了CSS3代碼。
     .search_bar{position: relative;margin-top: 10px; 
        width: 0%;min-width: 60px;height: 60px; 
        float: right;overflow: hidden; 
        -webkit-transition: width 0.3s; 
        -moz-transition: width 0.3s; 
        transition: width 0.3s; 
        -webkit-backface-visibility: hidden; 
        background:#162934; 
    } 
    .input{ 
        position: absolute;top: 0;right: 0; 
        border: none;outline: none; 
        width: 98%;height: 60px; line-height:60px;z-index: 10; 
        font-size: 20px;color: #f9f9f9;background:transparent 
    } 
    .search_ico,.search_btn  { 
        width: 60px;height: 60px;display: block; 
        position: absolute;right: 0;top: 0; 
        padding: 0;margin: 0;line-height: 60px;cursor: pointer; 
    } 
    .search_ico{background: #e67e22 url(icon.png) no-repeat 18px 20px;z-index:90;} 
    .search_open{width: 100% !important; z-index:1002} 
    #show{position:absolute; padding:20px} 
    上述代碼中關(guān)鍵的是transition: width 0.3s可以實(shí)現(xiàn)CSS3的動(dòng)畫效果,width由0變成100%,具體大家可以去看下CSS3手冊(cè)相關(guān)介紹,這里不多描述,你可以直接復(fù)制和修改代碼應(yīng)用到你的項(xiàng)目中去。
    jQuery
    當(dāng)點(diǎn)擊搜索按鈕時(shí),搜索條.search_bar通過toggleClass()切換樣式.search_open,這就實(shí)現(xiàn)了搜索條收縮和伸展功能。另外我們還需要判斷輸入情況,當(dāng)輸入滿足條件時(shí),提交搜索表單實(shí)現(xiàn)搜索功能,請(qǐng)看代碼:
     $(function(){ 
        $(".search_ico").click(function(){ 
            $(".search_bar").toggleClass('search_open'); 
            var keys = $("#search").val(); 
            if(keys.length>2){ 
                $("#search").val(''); 
                $("#myform").submit(); 
            }else{ 
                return false; 
            } 
        }); 
    }); 
    該效果可以運(yùn)用到移動(dòng)端項(xiàng)目中,當(dāng)然你也可以添加手動(dòng)滑動(dòng)效果。