-1

我正在尝试获取以前的 id,并且正在执行以下操作,但我从 alert(id) 得到“未定义”;所以在这个例子中,当他们点击左键时它应该返回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
  }
});

更新 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>
4

2 回答 2

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
  }
});
于 2013-02-13T19:26:13.827 回答
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}});
于 2013-02-13T19:29:16.617 回答