- ベストアンサー
自作関数の中でthisを使用することはできますか?
jqueryで関数を組んだ際、関数内でthisを使用することはできないのでしょうか? できない場合は代替の方法などがあれば教えていただきたいです。 イメージとしては以下のような形ですが、これでは動作しませんでした。 $(function(){ $("#hoge").click(function(){ fugafuga(); }) function fugafuga() { $(this).text("HOGE FUGA"); } })
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
普通にthis値を指定して、呼び出せばよろしいかと。 ご提示の例で言えば >fugafuga(); の部分を fugafuga.call(this); に変えれば、後はそのままで動作しませんか?
その他の回答 (1)
- LancerVII
- ベストアンサー率51% (1060/2054)
回答No.1
こんにちは。 $('#hoge').click ( function() { fugafuga($(this)); }); function fugafuga ( obj ) { // objはjQueryオブジェクト // この場合は$('#hoge'); // returnすることでチェーンメソッドを生かす return obj.text ( 'HOGE FUGA'); } とするのが手っ取り早いと思います。
質問者
お礼
こういう方法もあるんですね。 回答ありがとうございました!
お礼
callというメソッドを初めて知りました! 勉強になりました、ありがとうございます!