MJLやbajlからひらめきや知見を得て開発したライブラリ。IE11対応・jQuery非依存。coreと必要なプラグインをgulpでビルドして使うと良いです。
機能 | プラグインコード名 | 備考 |
---|---|---|
要素の高さ揃え | heightEqualizer | |
タブ | tab | |
メニュー | menu | |
ナビゲーションリストの現在地をアクティブにする | currentNav | |
ページ内リンクをスムーズにスクロールする | smoothScroll | |
ソーシャルボタンのロード | socialButtons | |
Google Mapの表示 | googleMap | |
スマートフォン向けナビゲーション | smartphoneNav | |
スタイルスイッチャー | styleSwitcher | 利用は非推奨。(OS・ブラウザの機能で実現できるため。) |
フォントサイズスケーラー | fontsizeScaler | 利用は非推奨。(OS・ブラウザの機能で実現できるため。) |
電話番号自動リンク変換 | telLink | |
アコーディオン | accordion |
以下のコードでプラグインが実行されます。
<script>
ajl.enable.pluginName(".class-name", { option: optionValue });
</script>
gulpを利用して、コアと必要なプラグインを結合・圧縮できます。--plugins
オプションには、プラグインコード名をカンマ区切りで列挙します。
$ gulp build --plugins heightEqualizer,smartphoneNav
プラグインの実行コードを統一するため、下記のテンプレートに沿って作成します。initメソッドは必須です。
(function (window, document, ajl) {
"use strict";
// ----------------------------------------------------------------------------
// PluginName: プラグインの要旨
// ----------------------------------------------------------------------------
ajl.PluginName = function (elem, options) {
this.elem = elem;
this.defaults = {
collect: function (parent) {
return parent.children;
}
};
this.options = ajl.util.deepExtend({}, this.defaults, options);
};
ajl.PluginName.prototype = {
_privateMethod: function () {
// Do something
},
publicMethod: function () {
// Do something
},
init: function () {
// Do something
}
};
ajl.util.createRunner("PluginName");
}(window, document, ajl));