Webウィジェットを作成しています。したがって、基本的には、リモートサーバーからスクリプトをロードし、コンテナーdivにコンテンツを表示します。サーバーに追加のパラメーターを送信する必要があります。たとえば、一部のコンテンツをフィルター処理するか、表示を選択するため、2つのオプションがあります。
スクリプトタグでデータを渡します(コードで動的にスクリプトを生成しています)
<script src="http://localhost/wordpress/?ai1ec_requirejs_widget&ai1ec=action:posterboard|no_navigation:true|request_type:jsonp"></script>
<div id="timely"></div>
のデータ属性としてデータを渡します<div>
<script src="http://localhost/wordpress/?ai1ec_requirejs_widget&ai1ec=action:posterboard|no_navigation:true|request_type:jsonp"></script>
<div id="timely" data-action="view" data-no-navigation="true" data-request-type="jsonp" ></div>
今のところ、この理由で最初のアプローチを選択しました。リクエストスクリプトにデータを含める場合、DOMが<div>
イベントをフィルタリングするための値を取得する準備ができるまで待つ必要はありません。私がロードしているスクリプトは、requirejsを非同期的にロードする小さなスクリプトです。ロードされたらすぐにjsを要求してデータをフェッチするためのajax呼び出しを行い(必要なすべての情報がすでにあるのでDOMの準備ができるのを待つ必要はありません)、データが到着すると、DOMの準備ができている場合は開始しますイベントハンドラーをアタッチします。それ以外の場合は、データをフェッチするための呼び出しを行う前に、DOMの準備が整うのを待つ必要があります
私の考えは、
<script src="http://localhost/wordpress/?ai1ec_requirejs_widget&ai1ec=action:posterboard|no_navigation:true|request_type:jsonp"></script>
最初のスクリプトとして、require.js asyncのダウンロードを開始し、すべてをはるかに高速に開始しますが、おそらく私は完全に間違っています。
どう思いますか?