4.2 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			4.2 KiB
		
	
	
	
	
	
	
	
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName | 
|---|---|---|---|---|
| bad87fee1348bd9aed308826 | jQuery を使用して要素の親要素をターゲットにする | 6 | 18321 | target-the-parent-of-an-element-using-jquery | 
--description--
すべての HTML 要素には parent (親) 要素があり、そこからプロパティを inherits (継承) します。
たとえば、jQuery Playground の h3 要素は <div class="container-fluid"> という親要素を持ち、それ自身は親の body を持ちます。
jQuery には parent() という関数があり、選択した要素の親要素にアクセスすることができます。
parent() 関数を使用して left-well 要素の親要素に青の背景色を付ける例を次に示します。
$("#left-well").parent().css("background-color", "blue")
#target1 要素の親要素に赤の背景色を付けてください。
--hints--
left-well 要素の背景色を赤にします。
assert(
  $('#left-well').css('background-color') === 'red' ||
    $('#left-well').css('background-color') === 'rgb(255, 0, 0)' ||
    $('#left-well').css('background-color').toLowerCase() === '#ff0000' ||
    $('#left-well').css('background-color').toLowerCase() === '#f00'
);
.parent() 関数を使用して、この要素を変更します。
assert(code.match(/\.parent\s*\(\s*\)\s*\.css/g));
#target1 要素で .parent() メソッドを呼び出します。
assert(
  code.match(/\$\s*?\(\s*?(?:'|")\s*?#target1\s*?(?:'|")\s*?\)\s*?\.parent/gi)
);
jQuery のみを使用して、これらのクラスを要素に追加してください。
assert(code.match(/<div class="well" id="left-well">/g));
--seed--
--seed-contents--
<script>
  $(document).ready(function() {
    $("#target1").css("color", "red");
    $("#target1").prop("disabled", true);
    $("#target4").remove();
    $("#target2").appendTo("#right-well");
    $("#target5").clone().appendTo("#left-well");
  });
</script>
<!-- Only change code above this line -->
<body>
  <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>
</body>
--solutions--
<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");
  });
</script>
<!-- Only change code above this line -->
<body>
  <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>
</body>