私たちは、要素の何百ものインラインonclick=""ハンドラーであることが多いサイトを削除しようとしています。これらの大部分は、onclick属性を介してアタッチされたOmnitureクリック追跡機能です。
これらはすべて同じコードなので、jQueryの.live()関数を使用して、単一のハンドラーをドキュメントにバインドするだけです。次に、追跡するリンク/ボタン/要素を更新して、class="trackable"のような一意のマーカーを付けます。ハンドラーに次のようなものを登録してもらいます(この擬似コードを検討してください)。
$('.trackable').live('click', function(e) {
trackClick();
};
明らかに、そこにいくつかのパラメータが必要であり、おそらくデータ属性などを介して、イベントソースオブジェクトからそれらを推測します。
私の懸念は主に信頼性です。私の読書から、live()ハンドラーは中断されません。たとえば、ブラウザーがページをアンロードする前に、イベントがバブルアップして処理される必要があります。でも、それはよくわかりません。ブラウザの互換性についても懸念があります。
live()イベントバインディングとOmniture(またはGoogle Analytics)の経験はありますか?