0

重複の可能性:
JavaScript で呼び出し元の関数を見つけるにはどうすればよいですか?

次のコードがあります。

JS:
function myfunc(mynumber){
   console.log(mynumber);
}

HTML:
<div onclick="myfunc(5);"></div>

jQueryを使用して、関数内でクリックされた要素のコンテキストを、属性のパラメーターとしてmyfunc渡すことなく、thisまたはパラメーターとして取得できる方法はありますか?$(this)onclick

4

3 に答える 3

2
<script>
  $( "div").bind("click", function( e ) {
    myfunc(mynumber)
  });
</script>

またはパラメータ付き

$('div').bind("click", {  Param1: 2 }, function(event){
    alert(event.data.Param1);
});
于 2013-01-15T10:41:23.517 に答える
1

jQuery を使用して実際にイベント ハンドラーをバインドします。そのようthisにして、その関数内でイベントをトリガーした要素を参照します。HTML5data-*属性を使用して、その特定の要素に使用する番号を格納できます。

HTML

<div data-number="5">5</div>
<div data-number="26">26</div>

jQuery

$(function() {
    $('div').on('click', function(e) {
        console.log($(this).data('number'));
        console.log(this);
    });
});
于 2013-01-15T10:44:44.823 に答える
0

これがあなたが求めたものかどうかわかりません。で関数を呼び出すことができます

myfunc.call(params);

myfunc では、これを参照または使用すると、呼び出し元のコンテキストまたは DOM が参照されます。

于 2013-01-15T10:47:42.370 に答える