노숭이

버튼 클릭시 리스트 스크롤 상단으로 이동하기

· 2022-06-09 (목) 16:29:03 · 2266

<div class="scroll">
  <div class="list">1</div>
  <div class="list">2</div>
  <div class="list">3</div>
  <div class="list">4</div>
  <div class="list">5</div>
  <div class="list">6</div>
  <div class="list">7</div>
  <div class="list">8</div>
</div>
<div class="btn-box">
  <button class="btn">1</button>
  <button class="btn">2</button>
  <button class="btn">3</button>
  <button class="btn">4</button>
  <button class="btn">5</button>
  <button class="btn">6</button>
  <button class="btn">7</button>
  <button class="btn">8</button>
</div>

 

 

.scroll{width:50%;float:left;height:300px;overflow-y:auto;background:#f5f5f5;}
.list{display:block;width:100%;height:100px;border:1px solid #aaa;}
.on{background:#ff0000;}

 

 

import $ from "https://cdn.skypack.dev/[email protected]";
$(document).ready(function(){
  $('.list').on("click", function(){
    $('.list').removeClass('on');
    $(this).addClass('on');
    var stht = 100;
    var stnb = $(".list").index(this);;
    // $('.wtb-result-box').scrollTop(stht * stnb);
    $('.scroll').animate({scrollTop : stht * stnb}, 300);
  });
  $('.btn').on("click", function(){
    $('.list').removeClass('on');
    var rstht = 100;
    var rstnb = $(".btn").index(this);
    console.log(rstnb);
    // $('.wtb-result-box').scrollTop(rstht * rstnb);
    $('.scroll').animate({scrollTop : rstht * rstnb}, 300);
    $('.list').eq(rstnb).addClass('on');
  });
});

 

이해하기 쉽게 화면으로 설명

3716929041_1654759733.3678.png

 

별거 없는 소스이지만 혹시 필요할까 싶어 저장겸 공유합니다.

스크롤박스가 있고 안에 리스트 클릭시 on 클래스 추가 되면서 스크롤 상단으로 이동,

버튼 클릭시 같은 번호의 리스트가 보여지도록 스크롤 이동되면서 클래스 추가

 

추가설명을 하자면 

버튼 클릭했을때 모든 list의 on 제거한후에 

list의 높이만큼 = 100 곱하기

몇번째 btn인지 구한다음에 = index(this)

그걸 곱해서 scroll의 스크롤값을 입력시킵니다. 

 

 

|
댓글을 작성하시려면 로그인이 필요합니다.

퍼블리셔팁

1,282건

퍼블리싱과 관련된 유용한 정보를 공유하세요. 질문은 상단의 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
레이아웃 23-06-12 조회 2,323
웹접근성 23-06-09 조회 2,828
레이아웃 23-06-08 조회 2,206
레이아웃 23-06-08 조회 3,962
기타 23-05-30 조회 1,677
레이아웃 23-05-23 조회 2,076
레이아웃 23-05-24 조회 1,631
레이아웃 23-05-25 조회 2,521
레이아웃 23-05-26 조회 2,064
HTML 23-05-11 조회 2,319
HTML 23-04-23 조회 1,492
HTML 23-03-16 조회 1,739
HTML 23-03-14 조회 1,714
HTML 23-03-14 조회 2,466
CSS 23-03-13 조회 1,827
CSS 23-03-13 조회 2,345
CSS 23-03-02 조회 2,293
HTML 23-02-26 조회 1,727
기타 23-02-26 조회 1,377
CSS 23-02-19 조회 1,581
기타 23-02-03 조회 2,771
CSS 23-01-03 조회 2,458
CSS 22-12-17 조회 2,450
반응형 22-10-22 조회 1,749
반응형 22-09-06 조회 4,917
웹접근성 22-06-29 조회 2,214
반응형 22-06-29 조회 2,575
CSS 22-06-29 조회 2,058
HTML 22-06-09 조회 2,267
HTML 22-05-11 조회 1,843