event.target

event.target 1.0追加

イベント発生源である要素を取得します。

サンプル

クリック箇所のタグ名を表示します。

<!DOCTYPE html>
<html>
<head>
<style>
  span, strong, p {
  padding: 8px; display: block; border: 1px solid #999;  }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>

<div id="log"></div>
<div>
  <p>
    <strong>
      <span>click</span>
    </strong>
  </p>
</div>
<script>
$("body").click(function(event) {
  $("#log").html("clicked: " + event.target.nodeName);
});
</script>

</body>
</html>

event.targetにより、クリックされた要素を取得し、その要素の子要素の 表示・非表示を切り替えます。

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<ul>
  <li>項目1
    <ul>
      <li>下位項目1-a</li>
      <li>下位項目1-b</li>
    </ul>
  </li>
  <li>項目2
    <ul>
      <li>下位項目2-a</li>
      <li>下位項目2-b</li>
    </ul>
  </li>
</ul>
<script>
function handler(event) {
  var $target = $(event.target);
  if( $target.is("li") ) {
    $target.children().toggle();
  }
}
$("ul").click(handler).find("ul").hide();
</script>
</body>
</html>

 Back to top

© 2010 - 2017 STUDIO KINGDOM