0

すべてのオブジェクトで使用できるアニメーション関数を作成しようとしているので、コードで次のように定義します。

$.fn.closeCurtain = ->
    $('.curtain').animate
      height: '65%'
      500
      -> $(this).animate
        height: '0%'
        500

次に、機能しないクリックイベントで呼び出したいのですが、関数はオブジェクトプロトタイプで利用できます。

$ ->
  $('.mainMenu ul li a').on('click', -> $(this).closeCurtain())

誰かがこれで私を助けることができますか?

4

2 に答える 2

1

太い矢印を使用することは正しいですが、jQuery にはこれに対する解決策があります。$.proxy

.on('click', $.proxy($(this), 'closeCurtain'))
于 2013-01-30T00:30:34.157 に答える
0

解決しました。

=>現在の を参照するには、 の全体的な形式を使用する必要がありましたthis

.on('click', => $(this).closeCurtain())
于 2013-01-29T23:39:32.323 に答える