5

新しい JavaScript ライブラリを試してみたい。j Query 1.3 の "Live" eventsを使用した (そして気に入った)ので、イベント システムにイベント委任を組み込む次のライブラリを使用したいと思います。ウィキペディアの JS ライブラリ比較は、ここでの仕事に失敗します。

MooTools は 2.0 で取得しているようです。他の人はどうですか?

このコミュニティ wiki を作成しています。リストを埋めるのを手伝ってください。

プロトタイプ: いいえ

jQuery: 1.3 以降

MooTools: 2.0 以降

ExtJS: はい

4

5 に答える 5

2

プロトタイプを調べることをお勧めします。これは、jQueryとほぼ同じ頻度でSOにリストされており、すべてのプロジェクトのJSライブラリとして使用しています。

デリゲートが組み込まれているとは思いませんが、必要に応じてデリゲートを追加するために必要なすべての機能を備えたフル機能のライブラリです。

于 2009-06-26T13:18:48.023 に答える
2

イベントの委任は、あなたが思っているよりも簡単です。

自動イベント委任のないライブラリを見つけた場合は、それにレイヤーを追加するだけです。

于 2009-06-20T16:08:53.713 に答える
1

イベント委譲とは、イベント ハンドラーを DOM ツリーのさらに上に吊るすことです。すべてのフレームワークでそれができる/できるはずです。ハンドラーは、バブリングするすべてのイベントをピックアップできる必要があります。イベントにはそれをトリガーした要素が含まれており、そこからハンドラーは何でもできます。

プロトタイプには、jQuery の のように機能するライブラリ固有のイベント委譲シュガーはありませんが、イベント$.fn.liveをキャッチしてターゲット要素を処理する関数を構築するのはかなり簡単です。

document.observe('click',function(event){alert(event.element().inspect())})

これを使用して、jQuery のライブのクローンを非常に簡単に作成できます (これがうまく機能するとは言っていません)。

live = function(selector,callback){
  document.observe("click",function(e){
    var element = e.element()
    if (!element.match(selector))
      element = element.ancestors().find(function(elem){return elem.match(selector)});
    else
      element = null
    if (element)
      callback.apply(element)
  })
}

次のように呼び出すことができます。

live("div",function(){this.setStyle({color:'blue'})})

私が言っているのは、イベント委譲はすでに JavaScript に組み込まれているということだと思います。図書館は砂糖を加えるだけです。

于 2009-06-26T23:08:49.040 に答える
1

Jquery の使用が好きで、別の何かを試してみたい場合は、mootools を使用します。Aarons イベント委任プラグインへのリンクと、元の使用方法に関する彼のチュートリアルが必要なすべてを提供します。結局のところ、どちらが良いかについて多くの議論があり、それはあなたが好むものです.

Mootools は優れており、優れたプラグインがいくつかあります。多くの mootools 開発と Jquery を行っている David Walsh もチェックしてください。彼は興味深いものを投稿しています。 http://davidwalsh.name

于 2009-06-26T21:36:57.103 に答える