作爲一個程序猿你必須會的技能----自學框架!

這是位大神提供的乾貨多多:
轉自:http://www.zuoxiaolong.com/blog/article.ftl?id=32

 

  這篇文章主要來源於和羣裏猿友的聊天,有猿友問LZ該如何學習一個框架。LZ想了想,這確實是一個值得探究的問題,於是這篇博文就應運而生了。接下來LZ就和各位猿友分享一下LZ個人學習框架的一些方式和方法,或許對大部分人還是有一些啓迪作用的。

 

找到它的老家

 

  對LZ個人來說,當LZ想要學習一個框架的時候,首要做的就是找到它的老家。打開你的瀏覽器,輸入網址:www.google.com(爲何不是百度?因爲我們學習的框架幾乎沒有china的),然後輸入你想學習的框架,比如spring(本文以它爲例,其餘其實都是類似的)。

  第一個出現的一般就是它的老家,就像下面這樣。

  擦,劇情不該是這樣的,導演掐了重新來一遍啊。該死的google老是這樣。據之前LZ的某老師說,這都是度娘乾的。

  好吧,甭管是誰幹的,我們只管不斷F5即可,最終你會看到下面的畫面。

  bingo。畫面出來了。這就是spring的老家,我們想要研究它就從它開始吧。接下來請你默默的打開它的鏈接。是的,默默的。

 

直入正題,找例子

 

  接下來我們就要直入正題了,進入它的頁面後,你會看到這樣的導航。

  看到了嗎?看到了嗎?

  guides,LZ蹩腳的英文大概看出來它就是嚮導的意思,於是我們果斷進來一看究竟。進來以後,你會發現一堆嚮導,這裏就是你的百寶箱。

  裏面有各種各樣的例子供你使用。接下來你需要做的就是按照其中某一個一步一步的做下去,直到完成你的目的。比如你想做一個任務調度器,那麼就果斷進入Scheduling Tasks。接下來,你就看到了這樣一個無腦學習的頁面。

  看到了嗎,你只需要ctrl+C/V就可以完成你的任務。不過這只是一個開始,因爲這畢竟只是一個簡單的例子,你還需要根據你當前的需要進行一些改變。如果你需要的正是這個例子,那麼就再好不過了。

  

尋找文檔

 

  通常情況下,在你完成任務的過程當中,總會遇到這樣或者那樣的問題,就算沒有遇到,如果想要學習一個框架的話,一個完整的說明文檔往往也是你需要的。在接下來的過程當中,我們的任務就是尋找文檔。這個過程往往是最困難和痛苦的,這與LZ蹩腳的英文有很大關係,所以每次找文檔都讓LZ痛苦並快樂着。

  不過這裏面總有一些大概的規律,比如doc、document、documentation這樣的字樣總是那麼的親切。而且我們不需要擔心一個框架沒有文檔,因爲對於開發它們的人來說,我們就是客戶,就是上帝,所以他們必須要讓上帝能看懂他們寫的東西。否則的話,他們寫的東西是沒有客戶的,沒有客戶就意味着沒有創造價值,沒有創造價值就意味着可能會被炒魷魚,被炒魷魚就意味着可能會被媳婦嫌棄,被媳婦嫌棄就意味着可能會被@#¥&綠#&%¥&*

  LZ並不會把文檔看的太深入,主要就是看一些自己開發需要的東西,還有很重要的一點就是,從當中找到框架的核心實現原理。比如spring當中,IOC的相關內容就是它的核心實現原理,因爲spring的所有框架(比如AOP、security等等)都是建立在IOC的基礎之上的。

 

尋找入口,跟蹤源碼

 

  這下例子也看過了,任務也完成了,文檔也有了,如果我們想要更加深入的瞭解一個框架,那麼源碼就是必不可少的一個環節了。說起來還是得感謝JAVA的開發氛圍,幾乎所有的東西都是開源的,所以你總能找到源碼。

  標題當中提到了入口,所謂尋找入口,就是尋找一個框架的切入點。比如spring的入口就在web.xml當中的監聽器,而struts2的入口就是web.xml當中的過濾器,常用緩存的入口往往存在spring管理的緩存的定製工廠bean當中等等。

  找到入口,你就能從頭開始調試,瞭解整個框架初始化的過程,以及初始化後是如何工作的。在跟蹤源碼的過程中,最好結合你的例子,搞清楚你的例子是如何運行的。比如剛纔的定時器調度,搞清楚spring是如何幫你進行調度的,比如執行任務的線程是如何分配的,任務的觸發是如何進行的等等。

  

找到框架的優劣勢並努力體會它

 

  說到這裏,請各位猿友想象一下,當你在逛商場的時候,如果你想要買某一樣東西,一般情況下,你總會在各個品牌或者同一個品牌的不同類型之間相互比較,如果你從不這麼做,請允許LZ尊稱你爲“土豪”。

  如果你這麼做了,請仔細的想想,你是在比較什麼?

  當然是優勢和劣勢了!

  對於我們程序猿來說,框架就是一個一個的商品,而我們就是這些商品的客戶。如果你想要做一個能買到物美價廉的商品的客戶,就必須瞭解各個商品的優劣勢。只有瞭解了各個商品的優劣勢,我們才能在衆多的框架當中選擇合適的框架,你說是嗎?

  所以,不用說,我們要想了解一個框架,就必須知道它的優劣勢,尤其是劣勢。優勢一般在框架的老家當中就能找到,因爲這是在爲他們的項目吹牛皮呢,他們的官網自然不會忘了這一項。至於劣勢,就需要自己根據例子、源碼以及其實現原理好好體會一下了。

  

結束語

 

  框架說到底就是一個商品,我們只是其中一個用戶罷了。因此LZ不建議各位猿友把框架的研究當做畢生夢想,更不建議各位淪陷於研究各種各樣的框架,或者去嘗試各種框架的例子,並很自豪的對着鏡子說“你好厲害,你竟然會這麼多框架”。注意!請你至少完成了以上幾件事,再說你會這個框架吧。

  框架只是我們針對特定場景所作出的選擇,因此我們只需要有學習框架的能力即可,千萬不要想着能把全世界所有品牌的牛奶都嘗試着喝一遍,如果你非要這麼做的話,LZ保證你一定會死於非命的。這就像你買藥一樣,你只需要知道當你感冒的時候應該吃什麼藥,當你拉肚子的時候應該吃什麼藥就好。更好的情況是,當你萬一有其它毛病時,你也可以通過一些途徑找到適合你的藥。

  話已至此,LZ就囉嗦到這裏吧。總之,深入的研究一下少數幾個優秀的框架,還是非常有益的,但不要貪多,學會適可而止即可。

  


版權聲明:本文版權歸作者(左瀟龍)所有,歡迎轉載。但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。

12
精彩
1
感動
0
搞笑
0
開心
0
憤怒
0
無聊
0
灌水
0
驚訝
    </ul>
        <div class="article_tag_div">
            <p>關鍵字:

                    <a onclick="javascript:searchArticles('tag','程序猿')" href="javascript:void(0)" >程序猿</a>
                    <a onclick="javascript:searchArticles('tag','如何學習')" href="javascript:void(0)" >如何學習</a>
                    <a onclick="javascript:searchArticles('tag','框架學習')" href="javascript:void(0)" >框架學習</a>
            </p>
        </div>
        <div class="article_category_div">
            <p>分類:
                    <a onclick="javascript:searchArticles('category','編程之路')" href="javascript:void(0)" >編程之路</a>
            </p>
        </div>
        <div class="nextinfo">
            <p>上一篇:<a href="http://www.zuoxiaolong.com/blog/article.ftl?id=33">雜談---程序猿的幾種分類,你躺槍了嗎?</a></p>
        </div>
        <div class="nextinfo">
            <p>下一篇:<a href="http://www.zuoxiaolong.com/blog/article.ftl?id=31">深入理解計算機系統(4.1)---X86的孿生兄弟,Y86指令體系結構</a></p>
        </div>
    <!-- 評論列表 -->
    <div class="feedback_area_title">評論列表(共<span id="comment_size">10</span>條評論)</div>
    <div class="feedbackNoItems"></div>
    <div class="feedbackItem" id="comment_list">
        <div id="comment_div_663" class="feedbackItem">
            <div class="feedbackListSubtitle">
                <div class="feedbackManage">
                <span class="comment_actions">
                    <a comment_id="663" class="reply_button" href="javascript:void(0)">回覆</a>
                    <a comment_id="663" class="quite_button" href="javascript:void(0)">引用</a>
                </span>
                </div>
                <a href="javascript:void(0)" class="layer">#1樓</a>&nbsp;&nbsp;&nbsp;&nbsp;
                時間:<span class="comment_date">2014-03-01 09:26:00</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                來源:<a id="commenter_a_663" href="javascript:void(0)">yonghu86</a>
            </div>
            <div class="feedbackCon">
                <div id="comment_content_663" class="blog_comment_body">

這個頂下







#2樓    
時間:2014-03-01 09:54:00     
來源:快刀客



必須頂,。。關注







#3樓    
時間:2014-03-01 11:25:00     
來源:poet_lj



LZ很幽默,話不糙,理不糙,頂







#4樓    
時間:2014-03-01 12:04:00     
來源:mingyueruya



這個可以頂一下的







#5樓    
時間:2014-03-01 12:37:00     
來源:中了劍的刺蝟



“尋找入口,跟蹤源碼”這句話非常贊同~頂一下~







#6樓    
時間:2014-03-01 18:07:00     
來源:過錯



題目的起的太大了吧







#7樓    
時間:2014-03-01 19:03:00     
來源:左瀟龍


@ 中了劍的刺蝟
@mingyueruya
@poet_lj
@快刀客
@yonghu86
多謝五位施主的支持,貧僧這裏有禮了。







#8樓    
時間:2014-03-01 19:03:00     
來源:左瀟龍


@ 過錯
抱歉,施主,把您忽悠進來了。







#9樓    
時間:2014-03-03 08:57:00     
來源:Never_Land



樓主,文章大標題的那個綠色的背景是咋弄的,新添加的css樣式?







#10樓    
時間:2014-03-04 18:55:00     
來源:小小小水滴



有理,得頂,LZ,做個朋友吧。(^o^)/~







發表評論
















站內搜索






<!-- 用戶中心模塊 -->
<div class="user_profile">
    <h3>用戶中心</h3>
                <table id="login_table" cellspacing="0" cellpadding="0">
            <tbody>
            <tr>
                <td style="font-size: 12px;">用戶名:</td>
                <td><input class="text_input" type="text" name="username"/></td>
                <td><a id="login_register_button" href="#" class="button">登錄&nbsp;|&nbsp;註冊</a></td>
            </tr>
            <tr>
                <td style="font-size: 12px;">密  碼:</td>
                <td><input class="text_input" type="password" name="password"/></td>
                <td>
                    <!--
                    <a href="#" id="qq_login_button"><img width="50" height="20" src="http://www.zuoxiaolong.com/resources/img/qq_login.png" title="使用QQ登錄"></a>
                    -->
                    &nbsp;
                </td>
            </tr>
            <tr>
                <td>&nbsp;</td>
                <td colspan="2" id="login_error_td" style="font-size:11px;">用戶名支持字母,數字,下劃線和中文</td>
            </tr>
            </tbody>
        </table>
</div>
<!-- 關注模塊 -->
<div class="follow_me">
    <h3>關注我</h3>
    <div class="follow_me_link">
        <ul>
            <li><a class="rss" href="http://www.zuoxiaolong.com/blog/feed.xml" target="_blank">RSS訂閱</a></li>
            <li><a class="douyu" href="http://www.douyu.com/zuoxiaolong" target="_blank">鬥魚直播</a></li>
            <li><a class="github" href="http://github.com/xiaolongzuo" target="_blank">Github</a></li>
        </ul>
    </div>
</div>
<!-- 排行榜模塊 -->
<div class="charts_tab" id="lp_right_select">
    <!-- 排行榜切換 -->
    <div class="charts_top">
        <ul class="hd" id="tab">
            <li class="cur"><a href="/blog/article_list.ftl?orderColumn=access_times&current=1" title="點擊查看更多">點擊排行</a></li>
            <li><a href="/blog/article_list.ftl?orderColumn=create_date&current=1" title="點擊查看更多">最新文章</a></li>
            <li><a href="/blog/article_list.ftl?orderColumn=good_times&current=1" title="點擊查看更多">站長推薦</a></li>
        </ul>
    </div>
    <div class="ms-main" id="ms-main">
        <div style="display: block;" class="display_none charts_list">
            <ul>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=80" title="勤快的程序猿都沒啥前途的,趕緊改掉你的壞毛病吧!">勤快的程序猿都沒啥前途的,趕緊...</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=8" title="記錄2015年年初跳槽的經歷!">記錄2015年年初跳槽的經歷!</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=177" title="一個最新發現,原來程序員的最終歸宿在這裏。">一個最新發現,原來程序員的最終...</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=25" title="六種流行的語言大餐---C、C++、python、Java、php、C#你更喜歡哪一個呢?">六種流行的語言大餐---C、C++、pyt...</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=41" title="雜談---第一次真正的高併發編程體驗">雜談---第一次真正的高併發編程...</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=89" title="雜談---這些大忌,你在面試的時候發生過嗎?(NO.1)">雜談---這些大忌,你在面試的時候...</a></li>
            </ul>
        </div>
        <div class="display_none charts_list">
            <ul>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=261" title="一個屌絲程序猿的人生(五十九)">一個屌絲程序猿的人生(五十九)</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=260" title="一個屌絲程序猿的人生(五十八)">一個屌絲程序猿的人生(五十八)</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=259" title="一個屌絲程序猿的人生(五十七)">一個屌絲程序猿的人生(五十七)</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=258" title="一個屌絲程序猿的人生(五十六)">一個屌絲程序猿的人生(五十六)</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=257" title="一個屌絲程序猿的人生(五十五)">一個屌絲程序猿的人生(五十五)</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=256" title="QQ羣管理員申請帖(本次截止日期爲2017-03-25)">QQ羣管理員申請帖(本次截止日期...</a></li>
            </ul>
        </div>
        <div class="display_none charts_list">
            <ul>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=80" title="勤快的程序猿都沒啥前途的,趕緊改掉你的壞毛病吧!">勤快的程序猿都沒啥前途的,趕緊...</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=8" title="記錄2015年年初跳槽的經歷!">記錄2015年年初跳槽的經歷!</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=184" title="回答阿里社招面試如何準備,順便談談對於Java程序猿學習當中各個階段的建議">回答阿里社招面試如何準備,順便...</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=176" title="送給即將畢業的同學,談談畢業後第一份工作和追女生的問題。">送給即將畢業的同學,談談畢業後...</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=177" title="一個最新發現,原來程序員的最終歸宿在這裏。">一個最新發現,原來程序員的最終...</a></li>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=56" title="淺談程序猿的職業規劃,看你如何決定自己的未來吧。">淺談程序猿的職業規劃,看你如何...</a></li>
            </ul>
        </div>
    </div>
</div>
<!-- 最新評論模塊 -->
<div class="new_comments">
    <h3>最新評論</h3>
    <ul>
                        <li>
                <div class="new_comments_div">
                    <div>
                        <a href="/blog/article.ftl?id=261">1.《一個屌絲程序猿的人生(五十九)》</a>
                    </div>
                    <div class="new_comments_comment_body">
                        越來越有感覺了
                    </div>
                    <div>
                        <p class="new_comments_author">----成都市網友</p>
                    </div>
                    <div style="clear:both"></div>
                </div>
            </li>
            <li>
                <div class="new_comments_div">
                    <div>
                        <a href="/blog/article.ftl?id=260">2.《一個屌絲程序猿的人生(五十八)》</a>
                    </div>
                    <div class="new_comments_comment_body">
                        這情節很刺激嘛!扎心了,老鐵...
                    </div>
                    <div>
                        <p class="new_comments_author">----北京市網友</p>
                    </div>
                    <div style="clear:both"></div>
                </div>
            </li>
            <li>
                <div class="new_comments_div">
                    <div>
                        <a href="/blog/article.ftl?id=188">3.《一個屌絲程序猿的人生(一)》</a>
                    </div>
                    <div class="new_comments_comment_body">
                        挺有意思,試試不註冊可以評論不
                    </div>
                    <div>
                        <p class="new_comments_author">----大連市網友</p>
                    </div>
                    <div style="clear:both"></div>
                </div>
            </li>
            <li>
                <div class="new_comments_div">
                    <div>
                        <a href="/blog/article.ftl?id=18">4.《高併發下的九死一生,一個不小心就掉入萬丈深淵》</a>
                    </div>
                    <div class="new_comments_comment_body">
                         樓主再解釋下爲什麼高併發下該函數就會出現exception就好了?
                    </div>
                    <div>
                        <p class="new_comments_author">----ismallboy</p>
                    </div>
                    <div style="clear:both"></div>
                </div>
            </li>
            <li>
                <div class="new_comments_div">
                    <div>
                        <a href="/blog/article.ftl?id=110">5.《(十五)建造者模式詳解(都市異能版)》</a>
                    </div>
                    <div class="new_comments_comment_body">
                        @ 赫連勃勃大王引用Doppelgenger和具體的Builder類之間的關係不是聚合嗎,應該是實線+...
                    </div>
                    <div>
                        <p class="new_comments_author">----麥浪無垠</p>
                    </div>
                    <div style="clear:both"></div>
                </div>
            </li>
    </ul>
</div>
<!-- 標籤模塊 -->
<div class="tag_div">
    <h3>標籤雲</h3>
    <ul>
                        <form id="" action="http://www.zuoxiaolong.com/blog/article_list.ftl" type="POST">
                <input type="hidden" name="tag" value="jquery源碼">
            </form>
            <li><a onclick="javascript:searchArticles('tag','jquery源碼')" href="javascript:void(0)" title="jquery源碼">jquery源碼</a></li>
            <form id="" action="http://www.zuoxiaolong.com/blog/article_list.ftl" type="POST">
                <input type="hidden" name="tag" value="面試準備">
            </form>
            <li><a onclick="javascript:searchArticles('tag','面試準備')" href="javascript:void(0)" title="面試準備">面試準備</a></li>
            <form id="" action="http://www.zuoxiaolong.com/blog/article_list.ftl" type="POST">
                <input type="hidden" name="tag" value="阿里巴巴">
            </form>
            <li><a onclick="javascript:searchArticles('tag','阿里巴巴')" href="javascript:void(0)" title="阿里巴巴">阿里巴巴</a></li>
            <form id="" action="http://www.zuoxiaolong.com/blog/article_list.ftl" type="POST">
                <input type="hidden" name="tag" value="hotspot源碼">
            </form>
            <li><a onclick="javascript:searchArticles('tag','hotspot源碼')" href="javascript:void(0)" title="hotspot源碼">hotspot源碼</a></li>
            <form id="" action="http://www.zuoxiaolong.com/blog/article_list.ftl" type="POST">
                <input type="hidden" name="tag" value="JVM源碼">
            </form>
            <li><a onclick="javascript:searchArticles('tag','JVM源碼')" href="javascript:void(0)" title="JVM源碼">JVM源碼</a></li>
            <form id="" action="http://www.zuoxiaolong.com/blog/article_list.ftl" type="POST">
                <input type="hidden" name="tag" value="程序猿的工作">
            </form>
            <li><a onclick="javascript:searchArticles('tag','程序猿的工作')" href="javascript:void(0)" title="程序猿的工作">程序猿的工作</a></li>
            <form id="" action="http://www.zuoxiaolong.com/blog/article_list.ftl" type="POST">
                <input type="hidden" name="tag" value="tcp/ip">
            </form>
            <li><a onclick="javascript:searchArticles('tag','tcp/ip')" href="javascript:void(0)" title="tcp/ip">tcp/ip</a></li>
            <form id="" action="http://www.zuoxiaolong.com/blog/article_list.ftl" type="POST">
                <input type="hidden" name="tag" value="程序員面試">
            </form>
            <li><a onclick="javascript:searchArticles('tag','程序員面試')" href="javascript:void(0)" title="程序員面試">程序員面試</a></li>
    </ul>
</div>
<!-- 圖文模塊 -->
<div class="tuwen">
    <h3>隨機推薦</h3>
    <ul>
                <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=18" title="高併發下的九死一生,一個不小心就掉入萬丈深淵"><img src="http://www.zuoxiaolong.com/resources/img/common/article_01.jpg"><b>高併發下的九死一生,...</b></a>

            <p><span class="tulanmu"><a href="#">左瀟龍</a></span><span
                    class="tutime">2014-09-06</span>
            </p>
        </li>
        <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=235" title="萬能的林蕭說:我來告訴你,一個草根程序員如何進入BAT。"><img src="http://www.zuoxiaolong.com/resources/img/common/article_15.jpg"><b>萬能的林蕭說:我來告...</b></a>

            <p><span class="tulanmu"><a href="#">左瀟龍</a></span><span
                    class="tutime">2016-10-31</span>
            </p>
        </li>
        <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=75" title="算法(JAVA)----兩道小小課後題"><img src="http://www.zuoxiaolong.com/resources/img/common/article_15.jpg"><b>算法(JAVA)----兩道小...</b></a>

            <p><span class="tulanmu"><a href="#">左瀟龍</a></span><span
                    class="tutime">2013-09-18</span>
            </p>
        </li>
        <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=60" title="強迫自己學習(實踐篇),以及關於寫博客的幾點建議"><img src="http://www.zuoxiaolong.com/resources/img/common/article_16.jpg"><b>強迫自己學習(實踐篇)...</b></a>

            <p><span class="tulanmu"><a href="#">左瀟龍</a></span><span
                    class="tutime">2013-10-01</span>
            </p>
        </li>
        <li><a href="http://www.zuoxiaolong.com/blog/article.ftl?id=103" title="(二十二)訪問者模式詳解(僞動態雙分派)"><img src="http://www.zuoxiaolong.com/resources/img/common/article_03.jpg"><b>(二十二)訪問者模式詳...</b></a>

            <p><span class="tulanmu"><a href="#">左瀟龍</a></span><span
                    class="tutime">2013-08-17</span>
            </p>
        </li>
    </ul>
</div>
<!-- 鏈接模塊 -->
<div class="links">
    <h3><span>[<a href="#">申請友情鏈接</a>]</span>友情鏈接</h3>
    <ul>
        <li><a href="http://www.qidian.com" target="_blank">起點中文網</a> </li>
        <li><a href="http://www.csdn.net" target="_blank">CSDN</a></li>
        <li><a href="http://www.cnblogs.com" target="_blank">博客園</a></li>
        <li><a href="http://blog.chinaunix.net" target="_blank">chinaunix</a></li>
        <li><a href="http://blog.51cto.com" target="_blank">51CTO</a></li>
        <li><a href="http://www.iteye.com" target="_blank">iteye</a> </li>
    </ul>
</div>  </div>


SyntaxHighlighter.all(); var contextPath = "http://www.zuoxiaolong.com"; window.onload = function () { var tabElement = document.getElementById("tab"); var msMainElement = document.getElementById("ms-main"); if (!tabElement || !msMainElement) { return; } var liElement = tabElement.getElementsByTagName("li"); var divElement = msMainElement.getElementsByTagName("div"); for (var i = 0; i
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章