jQueryからajax機能を除くすべてを削除しようとしています。ばかげた質問で申し訳ありませんが、私に聞いてください:
- 私はWebワーカーを使用してajax呼び出しを行っているため、core.jsのものをそこに入れることはできません。
- 私が使用している別のライブラリはjQueryを呼び出しますが、jQuery.Hive.Pollenライブラリで動作させることができませんでした。何時間ものトラブルシューティングを行った後、このChemDoodle WebコンポーネントライブラリはjQueryでのみ機能するようで、その理由を理解するのに十分な経験がありません。
- makefileを使用してjQueryを構築するのは非常に簡単なことのようですが、何を含めるべきかわかりません。makefileで、ajax関連のものを除くすべてを取り出しました。
。
BASE_FILES = ${SRC_DIR}/ajax.js\
${SRC_DIR}/ajax/jsonp.js\
${SRC_DIR}/ajax/script.js\
${SRC_DIR}/ajax/xhr.js\
ただし、/ ajaxソースファイルをさらに調べると、「document」を呼び出すメソッドが示されます。つまり、モジュールをいくつ削除しても、これはまったく機能しないということですか?
更新:jQueryのバグ問題#9889は、コアがWebワーカーが使用できるajax関数を少なくともすぐには提供しないことを示しているようです。
興味のある人のために、私がやろうとしていることと、なぜWebワーカーを使用する必要があるのかについて少し説明します。化合物のデータベースから分子シミュレーション/スクリーニングを行う分散コンピューティングアプリケーションを配置しています。通常のJavaScriptはページの速度を低下させ、アプリケーションをブラウザーで継続的に実行して、分子を次々に計算するため、機能しません。これが私の希望するWebワーカーの擬似コードの概要です
while (true){main();}
main(){
get job from server via ajax
process data//must use web worker
send results to server via ajax
}
はい、メインページから渡されたデータ文字列を逆シリアル化し、ページにajaxデータをフェッチするようにプログラムを実装できます。
//page-side javascript
var slave = new Worker()
slave.onMessage(event){
if status = "ready" {
check if data is available- if so, send it to server via ajax
fetch job data from server via ajax
slave.postMessage(job data)
}
}
//worker (slave)
self.onmessage(data) {
//process results
//send back to page
}
これはうまくいくと思いますが、少し粘着性があり、おそらく労働者にすべてをやらせるよりも遅いでしょう。Rick Waldronによると、「ポーリングを行っていたシステムがある場合、たとえばワーカーを開く、ループ内でxhrリクエストを永久に行う場合、各応答でpostMessage()の結果をクライアントに返すと、メリットが得られます」
私はxhrリクエストを永久にループで行っているので、このアプリケーションは有益だと思います。
jQuery.Hive.pollen.jsを見つけましたが、必要なajax呼び出しを行う他のライブラリでは機能していません。ただし、これは別の質問です(実際には私の主な質問です)。したがって、誰かがここに興味を持っている場合は、その投稿へのリンクがあります。