[๐Ÿ’ป] ์‹ค์Šต - barcelona (gsap)

J-silverยท2022๋…„ 9์›” 30์ผ

web-project

๋ชฉ๋ก ๋ณด๊ธฐ
13/18

๐Ÿ“– Overview

์‚ฌ์ดํŠธ๋ช…: barcelona
์ž‘์—… ๊ธฐ๊ฐ„: 3์ผ ์†Œ์š”
๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ: swiper, jQuery, gsap
์œ ํ˜•: PC ์ ์‘ํ˜•, ํด๋ก  ์ฝ”๋”ฉ
์ฐธ์—ฌ๋„: 100%

๐Ÿ‘€ Check-point

  • ํ™”์‚ดํ‘œ์— ๋”ฐ๋ฅธ ์ขŒํ‘œ ๊ตฌํ•˜๊ธฐ
  • ์Šคํฌ๋กค์ด๋ฒคํŠธ scrollTrigger์— ๋Œ€ํ•œ ์ดํ•ด
  • root ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ์‘์šฉ

๐Ÿ“Œ root

์ „์—ญ CSS ๋ณ€์ˆ˜ ์„ ์–ธ์„ ํ•จ์œผ๋กœ์จ ์•„์ฃผ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค!!
sass์ฒ˜๋Ÿผ ๋ณ€์ˆ˜๋ฅผ ์จ์ฃผ๋Š”๊ฑฐ๋‹ค.

:root{
    --font-en1:'hatton',Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
    --font-en2:'Montserrat',Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
    --color-green:#81d8d0;
}
  • ๊ณตํ†ต์œผ๋กœ ๋“ค์–ด๊ฐˆ ํฐํŠธ์™€ ์ƒ‰์„ ๋„ฃ์–ด์ค€๋‹ค.
    ->--color-green:#81d8d0; ์—ฌ๊ธฐ์„œ green์€ ๋‚ด๊ฐ€ ์ •ํ•œ ๋ณ€์ˆ˜
    => --๋ณ€์ˆ˜-๋ช…: ๊ฐ’;
    css์—์„œ ์ ์šฉ ์‹œ => :var(--ํ•ด๋‹น๋ณ€์ˆ˜๋ช…-)

  • font family๋กœ ํฐํŠธ๋“ค์„ ๋‹ค ์„ค์ •ํ•ด๋†“์€ ๋‹ค์Œ ๋ณ€์ˆ˜ ์ง€์ •ํ•ด์ฃผ๋Š”๊ฒƒ

.sc-visual .txt-title{
    font-family: var(--font-en1);
}
  • ์ด๋Ÿฐ์‹์œผ๋กœ ๋‚ด๊ฐ€ ์“ฐ๋ ค๋Š” ํด๋ž˜์Šค์— var๋ฅผ ์จ์„œ ํฐํŠธ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋ฉด ๋œ๋‹ค.
    -> ์œ„์— ์„ค์ •ํ•ด๋†“์€ ๊ฐ’์ฒ˜๋Ÿผ ํฐํŠธ๊ฐ€ ์ง€์ •๋จ

  • ์ด๋ฏธ ๋ณ€์ˆ˜๋กœ ๊ฐ’์„ ์„ค์ •ํ•ด๋‘์—ˆ๊ธฐ์— ์ƒ๋‹จ์—์„œ ๊ฐ’์„ ํ•œ ๋ฒˆ์— ์ œ์–ด๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ํ›„์— ๊ฐ’์„ ์„ ํƒ์ž๋งˆ๋‹ค ํ•˜๋‚˜์”ฉ ๋ฐ”๊พธ์ง€ ์•Š๊ณ  ๋ณ€์ˆ˜ ๊ฐ’์—์„œ์˜ ์Šคํƒ€์ผ๋งŒ ์ˆ˜์ •ํ•˜๋ฉด ์•„์ฃผ ๊ฐ„ํŽธํ•˜๊ฒŒ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค!

๐Ÿ“Œ ๊ธฐ๋ณธ ํฐํŠธ

sans-serif โ†’ ๊ณ ๋”•์ฒด / serifโ†’ ๋ช…์กฐ์ฒด


๐Ÿ“Œ swiper-slide-active

โœ ์ด๋ฏธ์ง€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ํ™•๋Œ€๋˜๋ฉด์„œ ๋„˜์–ด๊ฐ€๊ธฐ

swiper์— ํŠน์ • ์ด๋ฒคํŠธ๋ฅผ ๋„ฃ์–ด์ฃผ๊ณ  ์‹ถ๋‹ค๋ฉด swiper-slide-active์— css ๋„ฃ์–ด์ฃผ๊ธฐ

.sc-visual img{
    width: 100%;
    height: 100vh;
    object-fit: cover;
    transform: scale(1.2);
    transition: transform 5s linear; //linear - ์ผ์ •ํ•˜๊ฒŒ
}
.sc-visual .swiper-slide-active img{
    transform: scale(1);
}
  • ํ•ญ์ƒ transition ๋’ค์—๋Š” ๋ˆ„๊ฐ€ํ•œํ…Œ ํšจ๊ณผ๋ฅผ ์ค„๊ฑด์ง€ ์จ๋‘˜๊ฒƒ, ์•ˆ๊ทธ๋Ÿฌ๋ฉด ๋‹ค๋ฅธ์• ๋“ค๊นŒ์ง€ ํšจ๊ณผ๊ฐ€ ๋‹ค ์ ์šฉ๋œ๋‹ค.

โœ swiper์‹œ ๊ธ€์ž๊ฐ€ ๋ฐ‘์—์„œ ์œ„๋กœ ์˜ฌ๋ผ์˜ค๊ธฐ

<h3 class="txt-box">
    <span class="txt-title"><b>we are different</b></span>
    <span class="txt-info"><b>get to know us</b></span>
</h3>

๊ธ€์ž๊ฐ€ ์Šฌ๋ผ์ด๋“œ์‹œ ๋ฐ‘์—์„œ ์˜ฌ๋ผ์™€์•ผํ•˜๋‹ˆ bํƒœ๊ทธ๋กœ ๊ฐ์‹ธ์ค€๋‹ค
(๊พธ๋ฉฐ์ฃผ๊ธฐ ์œ„ํ•œ๊ฒƒ ์˜๋ฏธ์—†์Œ)


โญ transform์€ display๊ฐ€ ์—†์œผ๋ฉด ์‚ฌ์šฉํ• ์ˆ˜๊ฐ€ ์—†์Œ

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋ถ€๋ชจ(txt-title)์—๋„ display, ์ฃผ๋ ค๋Š” ์ž์‹ (b)์—๋„ display๋ฅผ ์ค˜์•ผํ•œ๋‹ค.

$(window).scroll(function(){
        curr = $(this).scrollTop();
        visualHeight = $('.sc-visual').outerHeight();
        // scvisual = $('.sc-visual').outerHeight();
        if (curr > visualHeight) {
            $('.header').addClass('active');
        } else {
            $('.header').removeClass('active');
        }
});

โœ ์˜ค๋ฅ˜์‚ฌํ•ญ

๊ธ€์”จ๊ฐ€ ์ž˜๋ฆด๋•Œ๋Š”??

โœ ํ•ด๊ฒฐ์‚ฌํ•ญ

  1. padding์„ ์ค€๋‹ค.
  2. line-height๋ฅผ ๋Š˜๋ ค์ค€๋‹ค.

โœ ํ—ค๋” active, ํŠน์ • ์ง€์—ญ์—์„œ ์ˆ˜ํ–‰ํ•˜๊ธฐ

$(window).scroll(function(){
        curr = $(this).scrollTop();
        scvisual = $('.sc-visual').outerHeight(); -> ๋น„์ฃผ์–ผ์˜์—ญ ๋†’์ด
	// visualHeight = $('.sc-visual').outerHeight();
        if (curr > scvisual) {
            $('.header').addClass('active');
        } else {
            $('.header').removeClass('active');
        }
    });

โ—ผ 2๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค

  1. ๊ธฐ์ค€์žก๊ธฐ
  2. ํ—ค๋”์˜ ๋†’์ด๋งŒํผ์„ ๊ณ„์‚ฐํ•˜๊ธฐ

๐Ÿค” curr, scvisual๋“ฑ๋“ฑ ์™œ ๋ณ€์ˆ˜๋กœ ์จ์ฃผ๋Š”๊ฑฐ์—์š”??
โ†’ ์žฌํ™œ์šฉ ํ•˜๋ ค๊ณ !!


๐Ÿ“Œ Swiperํ„ฐ์น˜ ์ด๋ฒคํŠธ

Swiper API
Swiper API์—์„œ ํ„ฐ์น˜ ๊ฒ€์ƒ‰ touch-end

touchstart โ†’ ์†๊ฐ€๋ฝ ๋‹ฟ์„ ๋•Œ ๋ฐœ์ƒ

touchmove โ†’ ์†๊ฐ€๋ฝ์ด ๋‹ฟ์€ ์ฑ„ ์›€์ง์ผ ๋•Œ ๋ฐœ์ƒ

touchend โ†’ ์†๊ฐ€๋ฝ์„ ๋—„ ๋•Œ ๋ฐœ์ƒ

featuredSlide.on('touchStart',function(){
        $('.sc-featured .mid-slide').addClass('grab')
        console.log(1);
      })
featuredSlide.on('touchEnd',function(){
        $('.sc-featured .mid-slide').removeClass('grab')
        console.log(2);
      })
.sc-featured .mid-slide.grab .img-box{
    transform: scale(0.95);
}
.sc-featured .mid-slide.grab img{
    transform: scale(1.2);
}
  • featureSlide๋Š” ๋‚ด๊ฐ€ ์ง€์ •ํ–ˆ๋˜ ๋ณ€์ˆ˜(Swiper)์ด๋ฆ„์ž„

  • ํ„ฐ์น˜ ๋ ๋•Œ grabํด๋ž˜์Šค ์ถ”๊ฐ€ํ•ด๋ผ, ์†์„ ๋•”๋–ผ grabํด๋ž˜์Šค๋ฅผ ๋นผ๋ผ

  • ์žกํžˆ๋Š”๊ฒŒ ๋” ๊ทน์ ์œผ๋กœ ๋ณด์ด๊ฒŒํ•˜๊ธฐ ์œ„ํ•ด ์ด๋ฏธ์ง€๊ฐ์‹ธ๊ณ ์žˆ๋Š” ๋ฐ•์Šค์— ์ž‘์•„์ง€๋Š” ์Šค์ผ€์ผ์คŒ


๐Ÿ“Œ ๋‹ค๋ฅธ์˜์—ญ ํด๋ฆญ์‹œ ๋‹ซ๊ธฐ

$('header').click(function(e){
        if( !$('.header .util-area .link-wrap').has(e.target).length )
          $('.header .util-area .link-wrap').removeClass('open');
    });

header์•ˆ์—๋Š” body๋‚˜ wrap๋“ฑ ๋‚ด๊ฐ€ ํด๋ฆญํ•˜๋ ค๋Š” ์š”์†Œ์˜ ์™ธ์˜ ์š”์†Œ๋ฅผ ๋„ฃ์–ด์ค€๋‹ค.


๐Ÿ“Œ ๋ฉ”๋‰ดํด๋ฆญ์‹œ ํ•˜๋‚˜์”ฉ ๋‚˜ํƒ€๋‚˜๊ธฐ

.header .menu-area .menu-body .menu-item{
    width: 30%;
    transform: translateY(20%);
    transition:  transform 1.2s, opacity 1.2s;
    opacity: 0;
}

์ด๋ฒคํŠธ๋ฅผ ์ฃผ๋ ค๋Š” ํด๋ž˜์Šค์— ์†๋„์™€ ํˆฌ๋ช…๋„๋ฅผ ์ฃผ๊ณ 

.header .menu-area.active .menu-body .menu-item:nth-child(1){
        transition-delay: 0.3s;
}
.header .menu-area.active .menu-body .menu-item:nth-child(2){
        transition-delay: 0.4s;
}
.header .menu-area.active .menu-body .menu-item:nth-child(3){
        transition-delay: 0.5s;
}
.header .menu-area.active .menu-body .menu-item:nth-child(4){
        transition-delay: 0.6s;
}
.header .menu-area.active .menu-body .menu-item:nth-child(5){
        transition-delay: 0.7s;
}
.header .menu-area.active .menu-body .menu-item:nth-child(6){
        transition-delay: 0.8s;
}

์ œ์ด์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ–ˆ์„๋•Œ ํ•˜๋‚˜ํ•˜๋‚˜์— delay๋ฅผ ์ค€๋‹ค.

โž•

nth-child๋กœ ํ–ˆ์„์‹œ ์ƒˆ๋กœ์šด ์˜์—ญ์ด ์ถ”๊ฐ€๋์„๋•Œ css์—์„œ ๊ณ„์† ์ถ”๊ฐ€ํ•ด์ค˜์•ผํ•˜๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€์ด ์žˆ๋‹ค.

const menu = gsap.from('.menu-area .menu-item',{
        // delay:1,
        opacity:0,
        yPercent:20,
        stagger:0.1, //์‹œ๊ฐ„์ฐจ
        paused:true, //์ •์ง€ (๋ฏธ๋ฆฌ์‹คํ–‰๋˜๋ฉด ์•ˆ๋˜๋‹ˆ๊นŒ_)
    })

gsap.from์œผ๋กœ ์ด๋ฒคํŠธ๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ์ „์„ ์…‹ํŒ…ํ•ด์ค€๋‹ค.
๋งŒ๋“ค์–ด์ค€ ์ œ์ด์ฟผ๋ฆฌ์— ์žฌ์ƒํ• ๋•Œ๋งˆ๋‹ค ์‹คํ–‰๋˜๊ฒŒํ•˜๊ธฐ

$('.header .util-area .btn-menu').click(function(e){
        e.preventDefault();

        menu.restart()

        $('.menu-area').addClass('active');
        $('body').addClass('active');        
    });

์ง€์ •ํ•œ ๋ณ€์ˆ˜menu๋ฅผ ๋ˆ„๋ฅผ๋•Œ๋งˆ๋‹ค ์‹คํ–‰ํ•˜๊ฒŒ ํ•˜๊ธฐ
-> menu.restart()

๐Ÿค” ์™œ gsap๋ฅผ ๋ณ€์ˆ˜ const๋กœ ์คฌ๋‚˜์š”??

๋ณ€์ˆ˜๋กœ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ƒˆ๋กœ๊ณ ์นจํ–ˆ์„๋•Œ ๋ฐ”๋กœ ์‹คํ–‰๋œ๋‹ค.



๐Ÿ“Œ scroll-down ํด๋ฆญ์‹œ ํ•ด๋‹น์˜์—ญ์œผ๋กœ ๋‚ด๋ ค๊ฐ€๊ธฐ

$('.sc-visual .scroll-down').click(function(){
        target = $('.sc-featured').offset().top+1
$('html,body').animate({scrollTop:target},300)
    })
$('html,body').animate({scrollTop:target},300) 

$('์—ฌ๊ธธ๊ธฐ์ค€์œผ๋กœ').animate({scrollTop:์ด์œ„์น˜๋กœ},300) 0.3์ดˆ๋™์•ˆ ์Šค๋ฅด๋ฅดใ…ก์ด๋™


๐Ÿ“Œ ์Šคํฌ๋กค๋ฐ” ๋ณ€๊ฒฝ

body::-webkit-scrollbar {
    width: 7px;  /* ์Šคํฌ๋กค๋ฐ”์˜ ๋„ˆ๋น„ */
}

body::-webkit-scrollbar-thumb {
    height: 10%; /* ์Šคํฌ๋กค๋ฐ”์˜ ๊ธธ์ด */
    background: rgba(31, 31, 31, 0.5); /* ์Šคํฌ๋กค๋ฐ”์˜ ์ƒ‰์ƒ */    
    border-radius: 10px;
}

body::-webkit-scrollbar-track {
    background: transparent;
    opacity: 1;  /*์Šคํฌ๋กค๋ฐ” ๋’ท ๋ฐฐ๊ฒฝ ์ƒ‰์ƒ*/
}

๐Ÿ“Œ html ํŠน์ˆ˜๋ฌธ์ž

โ€น &lsaquo; ์™ผ์ชฝ ํ™‘๊บฝ์‡ ํ‘œ
โ€บ &rsaquo; ์˜ค๋ฅธ์ชฝ ํ™‘๊บฝ์‡ ํ‘œ


๐Ÿ“Œ Gsap

โœ ๋งˆ์šฐ์Šค๋ฅผ ๋”ฐ๋ผ๋‹ค๋‹ˆ๋Š”์• , ์ขŒํ‘œ๊ตฌํ•˜๊ธฐ

์ด๋ฒคํŠธ๋ฅผ ๋จผ์ € ๊ตฌํ•ด์•ผํ•œ๋‹ค.
์ขŒํ‘œ๋จผ์ € ๊ตฌํ•˜๊ธฐ

  1. ๋ฌธ์„œ์˜ ์‹œ์ž‘์ง€์ ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ขŒํ‘œ
  2. ๋ณด๊ณ ์žˆ๋Š” ํ˜„์žฌํ™”๋ฉด์˜ ์ขŒํ‘œ
  3. ์˜์—ญ์—์„œ์˜ ์ขŒํ‘œ

๋งˆ์šฐ์Šค๋ฅผ ๋”ฐ๋ผ๋‹ค๋‹ˆ๋Š”์• ๋ฅผ ๊ตฌํ•˜๋ ค๋ฉด 2. ๋ณด๊ณ ์žˆ๋Š” ํ˜„์žฌํ™”๋ฉด์˜ ์ขŒํ‘œ๊ฐ€ ํ•„์š”ํ•˜๋‹ค

์ž์‹์š”์†Œ๊นŒ์ง€ ์ธ์‹ํ•˜๋Š”๊ฐ€ ์ฐจ์ด
mouseover, mouseout๋Š” ์ž์‹ ์š”์†Œ์— ์ ‘๊ทผํ•ด๋„ ๋™์ž‘์„ ํ•˜์ง€๋งŒ,

mouseenter, mouseleave๋Š” ์ž์‹ ์š”์†Œ์—๋Š” ๋™์ž‘ํ•˜์ง€ ์•Š๋Š”๋‹ค.


mousemove : ๋งˆ์šฐ์Šค๋ฅผ ์›€์ง์ผ ๋•Œ ๋ฐœ์ƒ

mouseover : ๋งˆ์šฐ์Šค๋ฅผ ์š”์†Œ ์•ˆ์— ๋“ค์–ด์˜ฌ ๋•Œ ๋ฐœ์ƒ

mouseleave : ๋งˆ์šฐ์Šค๊ฐ€ ์š”์†Œ์˜ ๊ฒฝ๊ณ„ ๋‚ด๋ถ€์—์„œ ์™ธ๋ถ€๋กœ ์ด๋™ํ•  ๋•Œ ๋ฐœ์ƒ


ํ˜„์žฌํ™”๋ฉด์˜ x์˜ ์ขŒํ‘œ,y์˜ ์ขŒํ‘œ๊ฐ’

xVal = e.clientX;
yVal = e.clientY;
$('body').mousemove(function(e){
        xVal = e.clientX;
        yVal = e.clientY;
        // console.log(xVal+'//'+yVal);
		gsap.to('.cursor',{
            x:xVal,
            y:yVal
  })

์ƒ๊ธด ํฌ์ธํ„ฐ๋•Œ๋ฌธ์— ๋’ค์— ๋‚ด์šฉ์ด ์„ ํƒ์ด ์•ˆ๋  ์ˆ˜ ์žˆ๋‹ค.

pointer-events: none; //css์— ์ž‘์„ฑ

pointer-event๋ฅผ ์จ์„œ ๋’ค์—๊ฐ€ ์„ ํƒ๋˜๊ฒŒํ•œ๋‹ค. ๋งˆ์น˜ ํฌ์ธํ„ฐ๊ฐ€ ๋’ค๋กœ ๋šซ๋ฆฐ๋А๋‚Œ!!

mouseover : ๋งˆ์šฐ์Šค๋ฅผ ์š”์†Œ ์•ˆ์— ๋“ค์–ด์˜ฌ ๋•Œ ๋ฐœ์ƒ

$('a').mouseover(function(){
        if($(this).data('name')){
            val = $(this).data('name');
        }else{
            val=''
        }
	/*$(this).data('name')?val=$(this).data('name'):val='';*/ //์ค„์—ฌ์“ฐ๊ธฐ
        gsap.to('.cursor',{
            scale:1.8,
            opacity:0.7
        })
})

mouseleave : ๋งˆ์šฐ์Šค๊ฐ€ ์š”์†Œ์˜ ๊ฒฝ๊ณ„ ๋‚ด๋ถ€์—์„œ ์™ธ๋ถ€๋กœ ์ด๋™ํ•  ๋•Œ ๋ฐœ์ƒ

$('a').mouseleave(function(){
        $('.cursor').text('');
        gsap.to('.cursor',{
            scale:1,
            opacity:1
        })
})

โœ mouseover์‹œ ๊ธ€์ž ๋‚˜ํƒ€๋‚˜๊ธฐ

if($(this).data('name')){
            val = $(this).data('name');
        }else{
            val=''
        }

       //์ค„์—ฌ์“ฐ๊ธฐ $(this).data('name')?val=$(this).data('name'):val='';
       //์ค„์—ฌ์“ฐ๊ธฐ 
        val = $(this).data('name')?$(this).data('name'):'';
       //์ค„์—ฌ์“ฐ๊ธฐ =>$('.cursor').html(`<span>${val}</span>`);
       
       // if ($(this).parents('.sc-featured').length) {
        //     // $('.cursor').text('featured');
        //     $('.cursor').html('<span>featured</span>');
        // }else if ($(this).parents('.recom-artist-area').length) {
        //     $('.cursor').html('<span>์ถ”๊ฐ€</span>');
        // }




<br>

โœ ์Šคํฌ๋กค์ด๋ฒคํŠธ

gsap.to('.recom-artist-area .img-box',{
        // y:-180 ํ”ฝ์…€
        scrollTrigger:{
            trigger:".recom-artist-area", //์ด๊ตฌ,๊ธฐ์ค€ํƒœ๊ทธ recom-artist-area์˜ ์‹œ์ž‘๊ณผ ๋
            start:"top 80%", //(ํŠธ๋ฆฌ๊ฑฐ๊ธฐ์ค€, ์œˆ๋„์šฐ๊ธฐ์ค€) ๋‘˜์ด ๋งŒ๋‚˜์•ผ ์‹คํ–‰
            end: "bottom top", //(ํŠธ๋ฆฌ๊ฑฐ๊ธฐ์ค€, ์œˆ๋„์šฐ๊ธฐ์ค€) ๋‘˜์ด ๋งŒ๋‚˜์•ผ ์‹คํ–‰
            markers:true, //์ขŒํ‘œํ‘œ์‹œ
            scrub:1, //์ด๊ฒŒ ์žˆ์–ด์•ผ ์—ฌ๋Ÿฌ๋ฒˆ ์‚ฌ์šฉ๊ฐ€๋Šฅ, ์—†์œผ๋ฉด 1ํšŒ์„ฑ
        }, //์ปด๋งˆ ํ•„์ˆ˜

        yPercent:-10 //ํผ์„ผํ…Œ์ด์ง€, ์›€์ง์ด๋Š” ์• ๊ฐ€ -10%๊นŒ์ง€ ๊ฐ€๋ผ
    })

start:"top 80%" โ†’ ์œˆ๋„์šฐ๊ธฐ์ค€์ด 100% ํ˜น์€ ๊ทธ๋ƒฅ bottom์ด์˜€๋‹ค๋ฉด ํ๋ฅด๋Š”๊ฒŒ ์ž˜ ์•ˆ๋ณด์ž„์œผ๋กœ 80%์ •๋„๊ฐ€ ์ ๋‹นํ•˜๋‹ค.


โœ ์Šคํฌ๋กค์‹œ ํ…์ŠคํŠธ ์›€์ง์ด๊ธฐ (gsap)

scrollTrigger์„ ์ด์šฉํ•˜์—ฌ ๊ฐ„ํŽธํ•˜๊ฒŒ ํ๋ฅผ์ˆ˜์žˆ๊ฒŒ ๋งŒ๋“ค์–ด์คŒ

gsap.to('.txt-area',{

        scrollTrigger:{
            trigger:".txt-area", //๊ธฐ์ค€ํƒœ๊ทธ recom-artist-area์˜ ์‹œ์ž‘๊ณผ ๋
            start:"top 100%", //(ํŠธ๋ฆฌ๊ฑฐ๊ธฐ์ค€, ์œˆ๋„์šฐ) ๋‘˜์ด ๋งŒ๋‚˜์•ผ ์‹คํ–‰
            end: "bottom top", //(ํŠธ๋ฆฌ๊ฑฐ๊ธฐ์ค€, ์œˆ๋„์šฐ) ๋‘˜์ด ๋งŒ๋‚˜์•ผ ์‹คํ–‰
            // markers:true, //์ขŒํ‘œํ‘œ์‹œ
            scrub:1, //์ด๊ฒŒ ์žˆ์–ด์•ผ ์—ฌ๋Ÿฌ๋ฒˆ ์‚ฌ์šฉ๊ฐ€๋Šฅ, ์—†์œผ๋ฉด 1ํšŒ์„ฑ
        }, //์ปด๋งˆ ํ•„์ˆ˜

        xPercent:-50 //์›€์ง์ด๋Š” ์• ๊ฐ€ -100ํ”„๋กœ๊นŒ์ง€ ๊ฐ€๋ผ
      })

๐Ÿ“Œ ๋™์˜์ƒ iframe

.contract-box ํด๋ฆญ์‹œ ๋™์˜์ƒ ๋งํฌ์ธ iframe์œผ๋กœ ์ด๋™ํ•˜๊ธฐ

$('.contract-box').click(function(){
        iframe = `<iframe width="560" height="315" src="https://www.youtube.com/embed/omuSTuF-fxk?autoplay=1&mute=1" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>`
        $(this).html(iframe)
      })

โœ iframe ์ถ”์ถœ๋ฒ•

ํผ๊ฐ€๊ธฐ์—์„œ ์ฝ”๋“œ์ถ”์ถœ




์˜ค๋‹ตโœ(โ—”โ—กโ—”)โœง

1.

swiper์—์„œ btn-nav๋Š” ํด๋ž˜์Šค ๊ณตํ†ต์œผ๋กœ ์ฃผ๋ฉด๋œ๋‹ค.
๊ดœํžˆ btn-nav1,2,3์“ฐ์ง€ ์•Š๊ธฐ


<div class="img-box"><img src="./asset/imges/contents/biglarge_Tiger_Gaulino_469c752944.jpg" alt=""></div>
<div class="txt-box">
  <strong class="txt-subtitle">art editions</strong>
  <h3 class="txt-title">tiger art gaulino</h3>
  <span class="txt-madeby">oscar tusquets</span>
</div>
.recom-artist-area .txt-box{
    padding: 20% 0;
    text-align: center;
    color: #fff;
}
  • ์ด๋ฏธ์ง€๋กœ ๋†’์ด์žก๊ธฐ
    โ†’โŒ ์ข‹์ง€์•Š์Œ

์ด๋ฏธ์ง€๊ฐ€ ์—†์œผ๋ฉด ๋†’์ด๊ฐ€ ์‚ฌ๋ผ์ง€๊ฒŒ ๋œ๋‹ค.
->๊ณต์กดํ•˜๋Š” ๊ฒƒ์€ ์ข‹์ง€ ์•Š๋‹ค.โŒ

์ด๋ฏธ์ง€๋ง๊ณ  textํ•œํ…Œ ํŒจ๋”ฉ์„ ์ค˜์„œ ํฌ๊ฒŒ ์˜์—ญ์„ ์žก์•„์ค€๋‹ค. โ†’ ๋” ํŽธํ•ด์ง




๐Ÿ’ฌ
gsap๋Š” ํ•ด๋„ํ•ด๋„ ์–ด๋ ต๋‹ค...
์Šค์Šค๋กœ ์˜ˆ์ œ ๋งŒ๋“ค์–ด์„œ ์—ฌ๋Ÿฌ๋ฒˆ ๋ฐ˜๋ณตํ•ด๋ณด์ž

profile
๋‹ฌ๋ฆฌ๋Š” ๊ฑฐ๋ถ์ด

0๊ฐœ์˜ ๋Œ“๊ธ€