140 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			140 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | ||
|  | id: bad87fee1348bd9aed008826 | ||
|  | title: jQuery を使用して偶数の要素をターゲットにする | ||
|  | challengeType: 6 | ||
|  | forumTopicId: 18318 | ||
|  | required: | ||
|  |   -  | ||
|  |     link: 'https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.2.0/animate.css' | ||
|  | dashedName: target-even-elements-using-jquery | ||
|  | --- | ||
|  | 
 | ||
|  | # --description--
 | ||
|  | 
 | ||
|  | `:odd` または `:even` セレクターを使用して、ターゲットの要素をその位置に基づいて指定することもできます。 | ||
|  | 
 | ||
|  | jQuery は 0 からインデックスが始まります。したがって、選択における 1 番目の要素の位置は 0 になることに注意してください。 このことは多少混乱を招くかもしれません。`:odd` は直感に反して、2 番目の要素 (位置 1)、4 番目の要素 (位置 3)、というように選択します。 | ||
|  | 
 | ||
|  | クラス `target` を持つすべての奇数の要素をターゲットとして選択し、それらにクラスを付ける方法を次に示します。 | ||
|  | 
 | ||
|  | ```js | ||
|  | $(".target:odd").addClass("animated shake"); | ||
|  | ``` | ||
|  | 
 | ||
|  | すべての偶数の `target` 要素を選択し、`animated` と `shake` のクラスを付けてみましょう。 **even** では、参照される要素の位置が 0 から始まることに注意してください。 | ||
|  | 
 | ||
|  | # --hints--
 | ||
|  | 
 | ||
|  | jQuery が偶数とみなすすべての `target` 要素を揺らします。 | ||
|  | 
 | ||
|  | ```js | ||
|  | assert( | ||
|  |   $('.target:even').hasClass('animated') && $('.target:even').hasClass('shake') | ||
|  | ); | ||
|  | ``` | ||
|  | 
 | ||
|  | `:even` セレクターを使用して、これらの要素を変更します。 | ||
|  | 
 | ||
|  | ```js | ||
|  | assert(code.match(/\:even/g)); | ||
|  | ``` | ||
|  | 
 | ||
|  | jQuery のみを使用して、これらのクラスを要素に追加してください。 | ||
|  | 
 | ||
|  | ```js | ||
|  | assert( | ||
|  |   code.match(/\$\(".target:even"\)/g) || | ||
|  |     code.match(/\$\('.target:even'\)/g) || | ||
|  |     code.match(/\$\(".target"\).filter\(":even"\)/g) || | ||
|  |     code.match(/\$\('.target'\).filter\(':even'\)/g) | ||
|  | ); | ||
|  | ``` | ||
|  | 
 | ||
|  | # --seed--
 | ||
|  | 
 | ||
|  | ## --seed-contents--
 | ||
|  | 
 | ||
|  | ```html | ||
|  | <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"); | ||
|  | 
 | ||
|  |   }); | ||
|  | </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> | ||
|  | ``` | ||
|  | 
 | ||
|  | # --solutions--
 | ||
|  | 
 | ||
|  | ```html | ||
|  | <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> | ||
|  | ``` |