NetCommons2 の任意のモジュールでjqueryを利用する

旧会社HPからの転記です。

<p>NetCommons2 のJavaScriptライブラリはprototype.jsですが、jqueryを使いたい時があります。<br />jqueryを使う時に、jqueryを個別にダウンロードして読み込むと、ウィジウィグの画像添付、ファイル添付が動作しなくなったり、jqueryの多重読み込みで白画面になったりする不具合が出たりします。</p>
<p>そこでNetCommons2でもメニューの一部がjqueryを使っていますので、その仕組みを流用して他のモジュールでも使えるようにする方法を記載します。</p>
<h1>&nbsp;１．html/webapp/modules/モジュール名/モジュール名_script.html</h1>
```html
<script class="nc_script" type="text/javascript">
if(!iepCls["<{$id}>"]) {
 iepCls["<{$id}>"] = new clsIep("<{$id}>");
}

// use jquery
// 実装例: https://github.com/netcommons/NetCommons2/blob/develop/html/webapp/modules/menu/files/js/menu.js#L899
// jqcheckCls変数: https://github.com/netcommons/NetCommons2/blob/develop/html/webapp/modules/common/files/js/jqcheck.js
// jquery実体: https://github.com/netcommons/NetCommons2/blob/develop/html/webapp/modules/comp/files/js/extension/jquery-1.6.4.min.js
// これを書くことでjqueryを読み込んでる
jqcheckCls.jqload("jquery-1.6.4.min", "window.jQuery", function() {
});

</script>
```
<p>・上記を書くことで、jqueryが読み込まれ、$の代わりにjQueryで書く事が出来ます。</p>
<p>　・[補足] NetCommons2ではprototype.jsで$を先に使っているため、jqueryも使う$と衝突します。そのため$の代わりに別の変数jQueryを使って記述します。</p>
<p>・モジュール名_script.htmlは、各テンプレートから参照させるため、モジュールのどのテンプレートでもjQueryが使えるようになります。</p>
<p>&nbsp;・この方法でjqueryを何度も読み込んでも、jqueryの多重読み込みになりませんでした。</p>
<p><strong>JQuery記述例</strong></p>
```js
// 項目表示
 jQuery('#discroption').show('slow');

// 項目非表示
 jQuery('#discroption').hide('slow');
```
<p>参考になれば幸いです。</p>
<p>(2019/12/23追記)&nbsp;</p>
<p>Jqueryのライブラリは拡張モジュールを含めると、複数ありました。&nbsp;</p>
<h2>本体検索：</h2>
<p><a href="https://github.com/search?utf8=%E2%9C%93&amp;q=repo%3Anetcommons%2FNetCommons2+extension%3Ajs+filename%3AJquery&amp;type=Code&amp;ref=advsearch&amp;l=&amp;l=" target="_blank" rel="noopener noreferrer">https://github.com/search?utf8=%E2%9C%93&amp;q=repo%3Anetcommons%2FNetCommons2+extension%3Ajs+filename%3AJquery&amp;type=Code&amp;ref=advsearch&amp;l=&amp;l=</a></p>
<p>html/webapp/modules/comp/files/js/extension/jquery.mobile_addition.js<br />html/webapp/modules/comp/files/js/extension/<strong>jquery-1.6.4.min.js</strong><br />html/webapp/modules/comp/files/js/extension/jquery.mobile-1.0.1.min.js</p>
<p>&rArr;共通としてJquery利用</p>
<p>Jqueryの利用<a href="https://github.com/netcommons/NetCommons2/search?q=jquery&amp;unscoped_q=jquery" target="_blank" rel="noopener noreferrer"><br />https://github.com/netcommons/NetCommons2/search?q=jquery&amp;unscoped_q=jquery</a></p>
<p>html/webapp/modules/menu/files/js/menu.js<br />&rArr;メニューの一部テンプレートで利用<br />html/webapp/modules/comp/files/js/extension/jquery.mobile_addition.js<br />&rArr;スマホ表示のjqueryモバイルで利用<br />html/webapp/modules/common/files/js/jqcheck.js<br />&rArr;何かチェックしてる？<br /><span style="text-decoration: line-through;">html/webapp/modules/comp/files/js/plugins/comp_textareamain.js</span><br /><span style="text-decoration: line-through;">&rArr;ウィジウィグの入力にIE＋jquery属性入ってるかのIF文。Jquery利用の観点からすると影響なし。</span></p>
<h2>拡張モジュール検索：</h2>
<p><a href="https://github.com/search?utf8=%E2%9C%93&amp;q=repo%3Anetcommons%2FNC2ExtensionModules+extension%3Ajs+filename%3Ajquery&amp;type=Code&amp;ref=advsearch&amp;l=&amp;l=" target="_blank" rel="noopener noreferrer">https://github.com/search?utf8=%E2%9C%93&amp;q=repo%3Anetcommons%2FNC2ExtensionModules+extension%3Ajs+filename%3Ajquery&amp;type=Code&amp;ref=advsearch&amp;l=&amp;l=</a></p>
<p>multimedia/files/images/jquery.jplayer.js<br />multimedia/files/images/<strong>jquery-1.7.1.min.js</strong><br />multimedia/files/images/<strong>jquery-1.8.3.min.js</strong></p>
<p>&rArr;動画モジュール再生のjplayerで利用</p>
<p>&nbsp;参考まで。</p>
<p>&nbsp;</p>