4

イベントパラメータを渡さずに、呼び出された JavaScript 関数から JavaScript 起動イベントを取得することは可能ですか?

サンプルコードは次のとおりです。

<html>
  <head>

    <script>
      function myFunction()
      {
        // How I will get from here the fired event  ??
      }
    </script>
  </head>
  <body>

    <p id="paragraghhh" onclick="myFunction()">
       Click on this paragraph. An alert box will
       show which element triggered the event.
    </p>

  </body>
</html> 
4

3 に答える 3

2

JavaScript 関数内で、this.event 属性を参照できます。

例えば、

function myFunction(){
  alert(this.event.type);
}

JS イベント (この場合は「クリック」) を警告します

于 2013-04-04T12:24:41.123 に答える
-1

これを試して:

onclick="myFunction(event)"

JS:

function myFunction(e)
{
    console.log(e.target);
}

また:

onclick="myFunction.call(this)"

JS:

function myFunction()
{
    console.log(this);
}

より良い解決策:

document.getElementById('paragraghhh').addEventListener('click', function(){
     console.log(this);
});
于 2013-04-04T12:22:14.460 に答える
-1

HTMLを次のように変更するだけです

<p id="paragraghhh" onclick="myFunction(event)">
  Click on this paragraph. An alert box will
  show which element triggered the event.
</p>

そしてJSへ

function myFunction(event)
{
  // Handle event
}
于 2013-04-04T12:24:55.300 に答える