Jquery 在后续元素之间抛出类

Jquery 在后续元素之间抛出类,jquery,selector,Jquery,Selector,我已经生成了一组这样的div <div id="donkey1" class="target"></donkey> <div id="donkey2" class="target"></donkey> <div id="donkey3" class="target"></donkey> $("#donkey1").addClass("active"); ... $("#donkey1").on("keyDown", fun

我已经生成了一组这样的div

<div id="donkey1" class="target"></donkey>
<div id="donkey2" class="target"></donkey>
<div id="donkey3" class="target"></donkey>
$("#donkey1").addClass("active");
...
$("#donkey1").on("keyDown", function() {
  .removeClass("active")
  .getNextTag().addClass("active");
});
我的问题是,我希望在任何DIV(当然是某个类的)上一般地进行传播,而我对getNextTag方法的实现没有任何影响

我会这样开始(尽管还没有实现)

如何实现“将DIV放在这个DIV旁边”


请注意,我更喜欢而不是使用索引。它就在那里,因为我缺乏想象力。实际ID很可能非常不规则。

您需要尝试以下方法:

$(".target").on("keyDown", function() {
  //assuming you want to remove on the current element.
  $(this).removeClass("active").next().addClass("active");
  //Just on the safer side if you have other siblings which are not `.target` use a selector in .next()
   $(this).removeClass("active").next('.target').addClass("active");
});

使用进入下一个div,使用
.target
为当前活动元素选择目标和
$(此)

您需要尝试以下方法:

$(".target").on("keyDown", function() {
  //assuming you want to remove on the current element.
  $(this).removeClass("active").next().addClass("active");
  //Just on the safer side if you have other siblings which are not `.target` use a selector in .next()
   $(this).removeClass("active").next('.target').addClass("active");
});

使用进入下一个div,使用
.target
为当前活动元素选择目标和
$(此)

为什么不能使用jQuery的操作符

获取集合中每个元素紧跟其后的同级 匹配元素。如果提供了选择器,它将检索下一个 仅当它与该选择器匹配时才为同级


您可以在其中添加选择器,比如
next(.target”)

为什么不能使用jQuery的操作符呢

获取集合中每个元素紧跟其后的同级 匹配元素。如果提供了选择器,它将检索下一个 仅当它与该选择器匹配时才为同级


您可以在其中添加选择器,如
next(“.target”)

如果您正在使用jQuery选择一个元素,并希望对下一个元素执行某些操作,则可以使用适当命名的
next()
方法:

$('.target').on('keyDown', function() {
    $('.active').removeClass('active').next().addClass('active');
}

当你得到最后一个元素时要小心;对于这种情况,您需要进行某种类型的签入。

如果您使用jQuery选择一个元素,并希望对下一个元素执行某些操作,则可以使用适当命名的
next()
方法:

$('.target').on('keyDown', function() {
    $('.active').removeClass('active').next().addClass('active');
}

当你得到最后一个元素时要小心;你需要为这个案子办理一些登记手续。

为什么我不能?因为我不知道,呵呵。我很久以前就这么做了,现在忘了怎么做了。谢谢@KonradViltersten是的,那评论对我来说有点咄咄逼人lol对不起!很高兴它成功了:)为什么我不能?因为我不知道,呵呵。我很久以前就这么做了,现在忘了怎么做了。谢谢@KonradViltersten是的,那评论对我来说有点咄咄逼人lol对不起!很高兴它起作用了:)对于下一个和上一个这样的保护器,有没有简洁的jQuery方法?或者我应该使用if?对于下一个和上一个这样的保护器,有没有简洁的jQuery方法?或者我应该使用if?