5

私はこれを使用しています:

$('.sizeChart').on('vclick', '.entry .ui-btn', function(e){

        console.log( e )
        console.log( e.currentTarget )
        console.log( $( e.currentTarget )
        console.log( $( e.currentTarget ).find('input.qtyInput') )

    var qty = $( e.currentTarget ).find('input.qtyInput');
    // do something

 });

これは機能しますが、$( e.currentTarget ).find(...)私には厄介なようです。

input数回クリックすると iOS3+4 でバインドが無効になるため、直接バインドすることはできません。全体を通して最も近いui-btn作品へのバインディング。

質問:
私が使用しているものよりも優れた/簡単/高速なバインド方法はありますか?

4

1 に答える 1

6

thisの代わりに使用できますe.currentTarget

$(this).find(...);

event.currentTargetthisが同じであることを証明します。

また、ドキュメントには次のように記載されています。

このプロパティは通常、関数の と等しくなりthisます。


それはそれについてです。DOM 要素を直接 jQuery に渡し、そこに DOM トラバーサル メソッドを使用することはかなり一般的です。

于 2012-11-14T11:42:11.587 に答える