<div class="chargerSummary">
<div class="chargerBox">
<div class="charger charger_slow " >
<div class="dispFlex">
//내용
</div>
</div>
<div class="charger charger_ac3" >
<div class="dispFlex">
//내용
</div>
</div>
<div class="charger charger_dccom" >
<div class="dispFlex">
//내용
</div>
</div>
<div class="charger charger_dcdemo" >
<div class="dispFlex">
//내용
</div>
</div>
<div class="charger charger_h" >
<div class="dispFlex">
//내용
</div>
</div>
</div>
위의 HTML을 보면 div 태그 별 각 다른 className을 가지고 있습니다.
div 태그가 나열 되어있는데 특정 div 태그의 위치를 변경하고 싶었습니다.
저는 기존에 특정 값이 존재하면 특정 div에 active 속성 값을 주는 코드를 가지고 있었습니다.
if ($(".count_dcdemo").text() !== "0") {
// 해당 태그에 active 클래스 추가
$(".charger_dcdemo").addClass("active");
$(".dcDemo").addClass("active");
}
div 태그 위치 이동을 위해 코드를 추가해 보겠습니다.
우선 prependTo 함수와 parent 함수는 jQuery에서 제공되는 DOM 조작을 위한 함수입니다.
그래서 jQuery를 사용하셔야합니다.
[prependTo 함수]
prependTo 함수는 선택한 요소를 지정한 부모 요소의 가장 앞쪽에 추가합니다.
즉, 선택한 요소를 특정 부모 요소의 자식 요소 중 가장 첫 번째로 위치하도록 이동시킵니다.
사용법은 다음과 같습니다
$(선택한 요소).prependTo(부모 요소);
예를 들어, $(".charger_dcdemo").prependTo($(".chargerBox"));는 charger_dcdemo 클래스를 가진 요소를 .chargerBox 클래스를 가진 부모 요소의 가장 앞쪽으로 이동시킵니다.
[parent 함수]
parent 함수는 선택한 요소의 부모 요소를 선택합니다.
즉, 선택한 요소의 직계 부모를 가져옵니다.
사용법은 다음과 같습니다
$(선택한 요소).parent();
-> 해당 함수는 위의 prependTo 함수의 인자로 부모요소 값을 넣어줘야 하는데 기억을 할 필요 없게 해주는 코드입니다.
(내가 선택한 요소의 부모 요소 )
따라서 위의 코드에서 chargerDemo.prependTo(chargerDemo.parent());는 chargerDemo 요소를 그 부모 요소의 가장 앞쪽으로 이동시키는데, chargerDemo.parent()는 chargerDemo의 부모 요소를 선택하고, prependTo 함수를 통해 해당 부모 요소의 가장 앞쪽으로 chargerDemo를 이동시킵니다.
if ($(".count_dcdemo").text() !== "0") {
// 해당 태그에 active 클래스 추가
$(".charger_dcdemo").addClass("active");
$(".dcDemo").addClass("active");
$(".charger_dcdemo").prependTo($(".charger_dcdemo").parent());
}
dc 콤보 태그는 3번째 div 태그로 위치하고 있었으나 해당 코드 적용 후 맨 앞으로 나와 있는 것을 볼 수 있습니다.
'Web Dev > Javascript' 카테고리의 다른 글
Nest.js의 내장된 코드 테스트 기능 ! Jest 로 하는 유닛테스트 , e2e 테스트 (0) | 2024.04.24 |
---|---|
Nest.js 는 Node.js 의 프레임워크 오케이 ? RestAPI 만들어 보자 (1) | 2024.04.19 |
[Javascript] 자바스크립트에서 Textarea 값 읽어오기 쉽지만 까먹죠 ! (3) | 2023.12.05 |
Turing IT 헤드헌터 코딩 테스트 문제 (4) | 2023.11.01 |
[Javascript] 코드 작동에 시간 제약을 걸어 둘 수 있는 코드 개발 하기 (2) | 2023.10.23 |
[Javascript] 웹페이지에 현재 날짜 제공하는 Date() 생성자 toLocaleDateString 함수 (2) | 2023.10.19 |