slideToggle 이 계속 slideDown 처럼 동작하는 건에 대하여

slideToggle 이 계속 slideDown 처럼 동작하는 건에 대하여

QA

slideToggle 이 계속 slideDown 처럼 동작하는 건에 대하여

본문

2949937337_1695196240.672.png

 

항상 좋은 조언 주시는 모든 분들께 감사의 말씀드립니다.

현재 접었다 펼치는 메뉴를 구현하고 있습니다. slideToggle로 아래로 내려갔다가 다시 누르면 접혀 올라가는 느낌을 구현하고자했는데, slideDown을 사용한것처럼 계속 위에서 아래로 내려가는 동작밖에 하지 않습니다.

css는 너무 복잡해서 못 올리겠는데 자바스크립트/제이쿼리 선에서 해결할 수 있을까요?

 


<section id="sct_sort">
    <h2>Sort</h2>
    <div>
      <button type="button" class="btn_sort">
        <div><i class="fa-solid fa-list"></i> Sort</div>
        <i class="fa-solid fa-chevron-down"></i>
      </button>
      <ul>
        <li><a href="<?php echo $sct_sort_href; ?>it_update_time&sortodr=desc">new product</a></li>
        <li><a href="<?php echo $sct_sort_href; ?>it_name&sortodr=asc">product name</a></li>
        <li><a href="<?php echo $sct_sort_href; ?>it_price&sortodr=asc">low price</a></li>
        <li><a href="<?php echo $sct_sort_href; ?>it_price&sortodr=desc">high price</a></li>
        <li><a href="<?php echo $sct_sort_href; ?>it_sum_qty&sortodr=desc">popular item</a></li>
      </ul>
    </div>
</section>
 
<script>
$(".btn_sort").click(function(){
    $("#sct_sort ul").slideToggle();
    $(this).toggleClass('active');
    $(".btn_sort > i").toggleClass('active');
});
$(document).mouseup(function (e){
    var container = $("#sct_sort ul");
    if( container.has(e.target).length === 0)
    container.hide();
});
</script>

이 질문에 댓글 쓰기 :

답변 1


<script>
$(".btn_sort").click(function(){
    $("#sct_sort ul").slideToggle();
    $(this).toggleClass('active');
    $(".btn_sort > i").toggleClass('active');
});
$(document).mouseup(function (e){
    if ($(e.target).closest('.btn_sort').length > 0) {
        return;
    }
    var container = $("#sct_sort ul");
    if( container.has(e.target).length === 0)
    container.hide();
});
</script>
답변을 작성하시기 전에 로그인 해주세요.
전체 129,119 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT