0

そのため、CMS の上級ユーザー (デザイナー/Web 開発者) は、コンテンツにインライン JavaScript/jQuery コードを追加して、CMS の特定のページで何かを非表示にするなどの特定のこと$(function(){ $('#banner').hide() });や、その他のより高度なことを行うことができます。コンテンツに追加した入力の jQuery UI 日付ピッカー。

私の質問は、jQuery とそれに依存するプラグインが YepNope (または RequireJS も想定) を介して非同期に読み込まれるかどうかです...そのページに到達すると、jQuery ライブラリが利用できないためエラーが発生します (数マイクロ秒後までロード済み)。

このような既存の Web サイトに YepNope のようなクラス ローダーを導入して、このインライン コードを変更しないようにする最適な方法は何ですか?

私の最善の推測は、CDN/フォールバックが必要な場合は、HTMLBoilerplate のように同期的にロードすることです (または、CDN フォールバックが必要ない場合は、script タグを介して通常どおりロードするだけです)。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/jquery/jquery-ui/js/jquery-1.7.1.min.js"><\/script>')</script>
<!-- maybe load Jquery UI and Jquery plugins that i know users will use -->

そして、ページで使用する必要のない他のものにのみ yepnope ローダーを使用しますか?

または、yepnope の読み込みが完了するまでインライン スクリプトの実行を遅らせるためのトリックを実行できますか?

4

1 に答える 1

1

実際にもう少しグーグルで調べてみると、私が信じている答えが見つかりました: https://stackoverflow.com/a/9582428/201156

また、インラインスクリプトを遅延読み込みするというアイデアは、興味深いものです: https://stackoverflow.com/a/10197342/201156

于 2013-07-31T18:54:33.517 に答える