1

クリックイベントがバインドされた画像があり、画像を拡大/縮小します。jQueryを使用して、画像の上隅に虫眼鏡を配置しています。問題は、虫眼鏡をクリックしても画像の拡大/縮小がトリガーされないことです。クリックを下にある要素に渡す、または画像を虫眼鏡のクリックイベントにサブスクライブさせるjQueryの方法はありますか?

虫眼鏡にクリックハンドラーを配置して、画像のクリックイベントをトリガーできることは知っていますが、これを行う別のより良い方法があるかどうかを知りたいです。

コメントに応えて、私の一般的なHTMLは次のとおりです。

<div style="position: relative">
   <img src="growme.jpg" />
   <img src="magnify.jpg" style="position: absolute; top: 0;" />
</div>

およびjQueryの擬似コード

$(growme).load(
   $(growme).parent().append($(magnify));
   $(growme).click(...);
)
4

2 に答える 2

1

...画像は虫眼鏡のクリックイベントに登録されていますか?

$('#image')。click(...)を使用する代わりに、$('#image、#image .magnify')。click()を実行します。

于 2011-03-02T18:27:45.007 に答える
0

だからこれを自分で整理した。要素が追加されたときにイベントを自動的にバインドするjQueryの.live()を使用できます。だから私は自分の(ドキュメント).readyを呼び出すだけで、虫眼鏡が追加されるたびに、前の要素(私の画像)をクリックしてもらうことができます。

jQuery(".magnify").live("click", function() {
     jQuery(this).prev().click();
});
于 2011-03-02T19:04:11.347 に答える