freeCodeCamp Challenge Guide: Target Even Elements Using jQuery

Target Even Elements Using jQuery


Hints

Hint # 1

Here’s how you would target all the odd-numbered elements with class target and give them classes:

$('.target:odd').addClass('animated shake');

This will shake all the even ones:

$('.target:even').addClass("shake");

The right way to do it would be $ ("button: even")


Solutions

Solution 1 (Click to Show/Hide)
<script>
  $(document).ready(function() {
    $("#target1").css("color", "red");
    $("#target1").prop("disabled", true);
    $("#target4").remove();
    $("#target2").appendTo("#right-well");
    $("#target5").clone().appendTo("#left-well");
    $("#target1").parent().css("background-color", "red");
    $("#right-well").children().css("color", "orange");
    $("#left-well").children().css("color", "green");
    $(".target:nth-child(2)").addClass("animated bounce");
    $(".target:even").addClass("animated shake");
  });
</script>

<!-- Only change code above this line. -->

<div class="container-fluid">
  <h3 class="text-primary text-center">jQuery Playground</h3>
  <div class="row">
    <div class="col-xs-6">
      <h4>#left-well</h4>
      <div class="well" id="left-well">
        <button class="btn btn-default target" id="target1">#target1</button>
        <button class="btn btn-default target" id="target2">#target2</button>
        <button class="btn btn-default target" id="target3">#target3</button>
      </div>
    </div>
    <div class="col-xs-6">
      <h4>#right-well</h4>
      <div class="well" id="right-well">
        <button class="btn btn-default target" id="target4">#target4</button>
        <button class="btn btn-default target" id="target5">#target5</button>
        <button class="btn btn-default target" id="target6">#target6</button>
      </div>
    </div>
  </div>
</div>
2 Likes

For me it doesn’t work

$(’.target:even’).addClass(“shake”);

And this is too (doesn’t work)

$(".target:even").addClass(“animated shake”);

I didn’t pass one test

All the target elements that computer considers even should shake.

I’ve reseted the code and do it agian, but with the same result.
What shall i do?! or what have i done wrong?

p.s. Challenge #109

I don’t know why but it works with this code:

$(document).ready(function() {
$("#target1").css(“color”, “red”);
$("#target1").prop(“disabled”, true);
$("#target4").remove();
$("#target2").appendTo("#right-well");
$("#target5").clone().appendTo("#left-well");
$("#target1").parent().css(“background-color”, “red”);
$("#right-well").children().css(“color”, “green”);
$("#left-well").children().css(“color”, “green”);
$(".target:nth-child(2)").addClass(“animated shake”);
$(".target:odd").addClass(“animated bounce”);
$(’.target:even’).addClass(“shake”);
});

Quotation marks ’ ’ , but not like this " "

It doesn’t work with " " (quotation marks), but it works with ’ ’

the challenge has been solved. Thanks

2 Likes

I believe you forgot to add the word animated before shake like this:

$(".target:even").addClass(“animated shake”);

Try reseting your code if it fails. I had no issues with this. Hope I was of help.

2 Likes

refresh the page, and try it again. then works on me.