Javascriptブロッキングなしロード方式
最近javascriptの高性能という本を読んでいると、javascriptのロード方法がいいです.
以下にまとめる.
1、YUI 3の方式
2、LazyLoad(1.5k)
Yahoo!SearchエンジニアRyan Groveが作成した一般的な遅延ロードツールは、loadScript()関数の拡張版です.
使用例:
LazyLoadは同様に複数のjavascriptファイルをサポートし、すべてのブラウザで正しい順序で実行できることを保証します.複数のjavscriptファイルをロードするには、LazyLoadだけが必要です.js()yメソッドはurl配列を入力します.
プロジェクトのアドレス:https://github.com/rgrove/lazyload
3、LABjs(4.7k)
LABjsはKyle SimpsonがSteve Soundersの啓発を受けて実現したブロックレスロードツールである.使用例:
$LAB.script()メソッドは、ダウンロードするjavascriptファイルを定義し、$LAB.wait()は、ファイルのダウンロードと実行後に呼び出される関数を指定します.
複数のjavscriptファイルをダウンロードするには、チェーンで別の$LAB.script()メソッドを呼び出すだけです.
LABjsがユニークなのは、依存関係を管理する能力です.通常、連続したタグは、ファイルが1つずつダウンロードされ、順番に実行されることを意味する.
LABjsでは、wait()メソッドを使用して、他のファイルを待つ必要があるファイルを指定できます.上の例ではfirst.jsはthe-resetにいるとは保証できません.jsのコードの前に実行します.これを確認するには、最初のscript()メソッドの後にwait()を呼び出す必要があります.
プロジェクトのアドレス:hhttp://labjs.com/
4、SeaJS(7.5k)
SeaJSは淘宝玉伯が開発したCommonJS規格に従うモジュールロードフレームワークで、任意のjavascriptモジュールを簡単にロードすることができます.詳細については、以下を参照してください.http://seajs.com/docs/
5、doフレーム(3.5 k)
Doは豆弁網kejunが開発した軽量Javascript開発フレームワークである.今のところmin.js.その核心機能はモジュールの組織とロードです.ロードはパラレル非同期キューを採用するポリシーであり、実行タイミングを制御できます.Doはコアクラスライブラリを任意に置換でき、デフォルトはjQueryです.
プロジェクトのアドレス:https://github.com/kejun/Do
6、RequireJS(13.1k)
プロジェクトのアドレス:http://requirejs.org/
以下にまとめる.
1、YUI 3の方式
2、LazyLoad(1.5k)
Yahoo!SearchエンジニアRyan Groveが作成した一般的な遅延ロードツールは、loadScript()関数の拡張版です.
使用例:
<script type="text/javascript" src="lazyload-min.js"></script>
<script type="text/javascript">
LazyLoad.js('the-reset.js', function(){
Application.init();
});
</script>
LazyLoadは同様に複数のjavascriptファイルをサポートし、すべてのブラウザで正しい順序で実行できることを保証します.複数のjavscriptファイルをロードするには、LazyLoadだけが必要です.js()yメソッドはurl配列を入力します.
<script type="text/javascript" src="lazyload-min.js"></script>
<script type="text/javascript">
LazyLoad.js(['first.js', 'the-reset.js'], function(){
Application.init();
});
</script>
プロジェクトのアドレス:https://github.com/rgrove/lazyload
3、LABjs(4.7k)
LABjsはKyle SimpsonがSteve Soundersの啓発を受けて実現したブロックレスロードツールである.使用例:
<script type="text/javascript" src="lab.js"></script>
<script type="text/javascript">
$LAB.script('the-reset.js')
.wait(function(){
Application.init();
});
</script>
$LAB.script()メソッドは、ダウンロードするjavascriptファイルを定義し、$LAB.wait()は、ファイルのダウンロードと実行後に呼び出される関数を指定します.
複数のjavscriptファイルをダウンロードするには、チェーンで別の$LAB.script()メソッドを呼び出すだけです.
<script type="text/javascript" src="lab.js"></script>
<script type="text/javascript">
$LAB.script('first.js')
.script('the-reset.js')
.wait(function(){
Application.init();
});
</script>
LABjsがユニークなのは、依存関係を管理する能力です.通常、連続した
LABjsでは、wait()メソッドを使用して、他のファイルを待つ必要があるファイルを指定できます.上の例ではfirst.jsはthe-resetにいるとは保証できません.jsのコードの前に実行します.これを確認するには、最初のscript()メソッドの後にwait()を呼び出す必要があります.
<script type="text/javascript" src="lab.js"></script>
<script type="text/javascript">
$LAB.script('first.js').wait()
.script('the-reset.js')
.wait(function(){
Application.init();
});
</script>
プロジェクトのアドレス:hhttp://labjs.com/
4、SeaJS(7.5k)
SeaJSは淘宝玉伯が開発したCommonJS規格に従うモジュールロードフレームワークで、任意のjavascriptモジュールを簡単にロードすることができます.詳細については、以下を参照してください.http://seajs.com/docs/
5、doフレーム(3.5 k)
Doは豆弁網kejunが開発した軽量Javascript開発フレームワークである.今のところmin.js.その核心機能はモジュールの組織とロードです.ロードはパラレル非同期キューを採用するポリシーであり、実行タイミングを制御できます.Doはコアクラスライブラリを任意に置換でき、デフォルトはjQueryです.
プロジェクトのアドレス:https://github.com/kejun/Do
6、RequireJS(13.1k)
プロジェクトのアドレス:http://requirejs.org/