国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

原生JS模擬Bootstrap中的折疊(Collapse)插件

IntMain / 1983人閱讀

摘要:以前實習的時候因為趕時間直接用的插件做了個折疊菜單,對于一個原生控來說還是更傾向于自己寫一個,畢竟為了個折疊菜單引入和有點太臃腫了。原版的效果其實也不難,主要是在開合的過程中添加了的過渡效果。

以前實習的時候因為趕時間直接用bootstrap的插件collapse.js做了個折疊菜單, 對于一個原生控來說還是更傾向于自己寫一個, 畢竟為了個折疊菜單引入jq和bootstrap有點太臃腫了。 于是又到了考驗山寨能力的時候了-_-# 。
原版collapse.js的效果其實也不難,主要是在開合的過程中添加了css3的過渡效果。以下是原版與山寨版demo,同時點擊預覽,可明顯感受到加載速度的區別。
DEMO:
Bootstrap原版Collapse

接下來是本人山寨版(山寨版結構簡單,代碼輕巧,無依賴^_^):
Collapse by native JS

打包下載出門左轉Github ? Collapse By Native JS
以下是代碼邏輯:
HTML的結構

Title1

content1
content1
content1
content1
content1
content1
content1
content1
content1

Title2

content2
content2
content2
content2
content2
content2
content2
content2
content2

Title3

content3
content3
content3
content3
content3
content3
content3
content3
content3

Title4

content4
content4
content4
content4
content4
content4
content4
content4
content4

CSS(要山寨就盡量山寨得徹底,外觀樣式全部從bootstrap的樣式搬運過來):

* {
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
}
body {

    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.42857143;
    color: #333;
    background-color: #fff;
    margin: 2px;
}

a{
    text-decoration: underline;
    color: #666666;
}
a:hover{
    text-decoration: none;
}
.collapseDiv{
    color: #333;
    border-radius: 4px;
    background-color: #f5f5f5;
    border:1px solid transparent;
    border-color: #ffffd;
    box-shadow: 0 1px 1px rgba(0,0,0,.05);
    margin-top: 5px;
    margin-bottom: 0;
}
.collapseDiv h3{
    font-size: 14px;
    font-weight: bold;
    color: #333;
    border-color: #ffffd;
    padding-top: 5px;
    padding-right: 15px;
    padding-bottom: 5px;
    padding-left: 15px;
    background-color: #f5f5f5;
    margin: 0;
}


.collapse_body {
    background-color:#fff ;
    position: relative;
    height: 0;
    overflow: hidden;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
    -webkit-transition-duration: .35s;
    -o-transition-duration: .35s;
    transition-duration: .35s;
    -webkit-transition-property: height, visibility;
    -o-transition-property: height, visibility;
    transition-property: height, visibility
    
}
.collapse_content{
    border-top: 1px solid #ffffd;
    background-color:#fff ;
    padding:15px;
}

JS

//接受三個參數,分別是折疊菜單的外包div名稱,是否關閉之前的折疊,默認開啟的折疊內容
        function Collapse(className,close_prev,default_open){        
        this._elements = [];
        this._className = String(className);
        this._previous = Boolean(close_prev)
        this._default = typeof(default_open)==="number" ? default_open: -1
        this.getCurrent  
        this.init();
    }

    //收集所有折疊菜單的div
    Collapse.prototype.collectElementbyClass = function(){
        this._elements = [];
        var allelements = document.getElementsByTagName("div");

        for(var i=0;i           
               
                                           
                       
                 

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/86193.html

相關文章

  • 前端入門24-響應式布局(BootStrap

    摘要:聲明聲明本篇內容摘抄自以下兩個來源中文網感謝大佬們的分享。版本是全球最受歡迎的前端組件庫,用于開發響應式布局移動設備優先的項目。官方示例官方示例版本,官方還沒有中文教程,的中文教程倒是很齊全了。聲明 本篇內容摘抄自以下兩個來源: BootStrap中文網 感謝大佬們的分享。 正文-響應式布局(BootStrap) 這次想來講講一個前端開發框架:BootStrap BootStrap 目前...

    lunaticf 評論0 收藏0
  • js輕松實現折疊面板

    摘要:移動端導航欄有個很常見的折疊菜單,有插件實現,有組件。最近用無插件實現一個這樣的效果。探究歷程直接采用,雖然實現了控制容器的顯示和隱藏,但是效果生硬。 移動端導航欄有個很常見的折疊菜單,bootstrap有collapse插件實現,jQuery UI有Accordion組件。最近用js無插件實現一個這樣的效果。 探究歷程 display:none; 直接采用display,雖然實現...

    suxier 評論0 收藏0
  • js輕松實現折疊面板

    摘要:移動端導航欄有個很常見的折疊菜單,有插件實現,有組件。最近用無插件實現一個這樣的效果。探究歷程直接采用,雖然實現了控制容器的顯示和隱藏,但是效果生硬。 移動端導航欄有個很常見的折疊菜單,bootstrap有collapse插件實現,jQuery UI有Accordion組件。最近用js無插件實現一個這樣的效果。 探究歷程 display:none; 直接采用display,雖然實現...

    gghyoo 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<