使用jQuery获取div元素的先前兄弟

时间:2013-02-13 19:06:06

标签: jquery

我正在尝试获取之前的ID并且我正在执行以下操作但是我从alert(id)获得“undefined”;因此,在此示例中,单击左键时应返回 step_1 。谢谢你的帮助。

JavaScript的:

$("body").keydown(function(e) {
  if(e.keyCode == 37) { // left
      id = $('.steps.onit').prev().attr('id');
      alert(id);
  }
  else if(e.keyCode == 39) { // right
  }
});

UPDATE HTML(div是背景图片):

<div id="container-steps">
    <a href="some url"><div id="step_1" class="steps"></div></a>
    <a href="some url"><div id="step_2" class="steps onit">selected one</div></a>
    <a href="some url"><div id="step_3" class="steps"></div></a>
</div>

2 个答案:

答案 0 :(得分:2)

prev找到一个兄弟姐妹(在同一级别,共享父母)而非堂兄弟。

$("body").keydown(function(e) {
  if(e.keyCode == 37) { // left
      id = $('.steps.onit').parent().prev().children('.steps').attr('id');
      alert(id);
  }
  else if(e.keyCode == 39) { // right
  }
});

答案 1 :(得分:0)

这应该有效

$("body").keydown(function(e) {if(e.keyCode == 37) { // left
  var obj = $('.steps.onit');
  var id = obj.attr("id");
  alert(id);}else if(e.keyCode == 39) { // right}});