묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.01
어몽이를 stage의 100% 로 보낼 수 있는 방법이 궁금해요!
키프레임 wrap around 실습하다가 궁금해서 여쭤봐요!해설해주신 대로 어몽이를 x를 420으로 하면부모인 stage 가로사이즈 500px이 바뀌면 어몽이에 적용한 420도 같이 바뀌어야 해서부모 사이즈를 기준으로 하려면 left나 right 속성을 사용하는 방법 밖에 없을까요?
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.02
아래 질문 (토이스토리 title에 있는 button에 링크 거는 법)에 대한 해결방법이 이게 맞을까요? 더 좋은 방법이 있으면 알려주세요
navList.forEach((li, index)=>{ const roma = ['I', 'II', 'III']; const arabic = ['1','2','3'] const linkAddr = ['naver.com','google.com','inflearn.com']; // button 링크 주소 li.addEventListener('click',()=>{ if(!playing) { next = index; if(li.classList.contains('active')) return; for(let i=0;i < navList.length; i++) { navList[i].classList.remove('active'); } li.classList.add('active'); const addr = /*html*/`location.href='http://${linkAddr[next]}'`; // button 속성 값 const tl = gsap.timeline() .add(leave[current].play()) .add(titleLeave.play(),'-=1') .set('.title h1',{text:`toystory ${roma[index]}`}) .set('.title p',{text:`토이스토리 시즌 ${arabic[index]}`},'<') .add(enter[next].play()) .add(titleEnter.play()) tl.eventCallback('onComplete',()=>{ const btnLink = document.querySelector('.title button'); // button 요소 가져오기 btnLink.setAttribute('onclick',addr); // button의 onclick 속성 추가 current = next; playing = false; }) playing = true; } }) }) window.addEventListener('load',()=>{ const tl = gsap.timeline() .add(enter1.play()) // enter 타임라인 실행 .add(titleEnter.play()) tl.eventCallback('onComplete', () => { const btnLink = document.querySelector('.title button'); //처음 실행시 button에 속성값 추가 btnLink.setAttribute('onclick',"location.href='http://naver.com'"); //처음 실행시 button에 속성값 추가 playing = false; }) // page03()[1].play() // leave 타임라인 실행 })
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.02
토이스토리 practice에서 "WATCH NOW"버튼에 대한 href 속성값을 변경하는 방법
안녕하세요. 4강 토이스토리 practice에서 강의 중 선생님께서 "WATCH NOW" 버튼의 href?값을 페이지에 따라 변경할 수 있다고 하셨는데요. gsap을 이용해서 변경할 수 있는 방법이 있는 건지요?아님 자바스크립트 함수 안에서 직접 세팅하는 걸까요?
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
마우스 채워지는 텍스트
선생님과 똑같이 따라했는데요,마우스와 같은 위치에서 채워지는게 아니라 마우스가 한참 위에 있어야 뒤늦게 올라오는데 이게 맞는건가요..? 강의에서 선생님 완성본도 비슷하게 뒤늦게? 올라오던데 마우스 위치와 같이 채워지게는 못하는 걸까요?높이와 넓이 문제인 것도 같아서 여러 수정을 해봤는데 안 되네요ㅜㅜ
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.02
motionpath 플러그인에서 align의 자세한 역할 궁금합니다
안녕하세요 강의 잘 듣고 있습니다! 공식 문서 보면서 복습하는 중인데 공식문서 예제에는 motionPath:{ path: "#path", align: "#path", autoRotate: true, alignOrigin: [0.5, 0.5] } 처럼 path와 align이 같은 요소로 지정되어 있습니다.그래서 codepen을 이용해서 강의 내용처럼align에 움직이는 요소를 지정해봤는데 경로에서 붕 떠서 이동합니다. 마찬가지로 강의 샘플 코드도 align에 경로를 넣어서 한번 테스트 해봤는데 이번에는 호랑이가 너무 붕 떠서 이동합니다. 강의 내용에서는 align에 움직이는 타겟을 넣으면 된다고 하셨는데이건 svg 코드 구성에 따라서 다른건가요??? 공식 문서에 따르면 움직이는 요소를 경로에 맞춰 정렬 해주는게 align의 역할이라고 하는데추상적인 설명인 것 같아서 잘 이해가 안됩니다..! align에 대해 제가 정확히 이해하고 있는게 맞는지,그리고 align에 들어가는 요소는 정확히 어떻게 구별해 넣는게 좋은지 궁금합니다
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
스크립트 부분이 이해가 어렵네요
align = (e) => { setX(e.clientX); setY(e.clientY); },이 부분에서 align이 무슨 함수인가요?보통 함수 사용시에는 function이라던가 익명함수도 var, const등 변수에 할당하여 쓰던데 딸랑 이름만 있고 화살표 함수만 있는 함수는 처음봐서 헷갈립니다... if (activeImage) { gsap.set(image, { x: gsap.getProperty(activeImage, "x"), y: gsap.getProperty(activeImage, "y"), }); }여기서 굳이 activeImage를 밑에서 activeImage = image;이렇게 할당하여 사용할 필요가 있나요?그냥 바로 let으로 선언했던 image를 넣어도 상관없을 것 같아서요 그리고 이 강의에서 사용하셨던fade, fade.play(),fade.reverse()이 코드들은 gsap에서 사용하는 코드들인가요 아니면 일반 자바스크립트에서도 사용하는 코드들인가요..? 제가 기초가 부족해서 그런 걸 수도 있겠지만 jquery도 아니고 js에서 이렇게 사용하는 걸 처음봐서요,,,
-
미해결웹 애니메이션을 위한 GSAP 가이드 Part.03
안녕하세요 ScrollSmoother에 대해 질문드릴게요
안녕하세요 ScrollSmoother에 대해 질문드릴게요! 이번 강의 너무 잘보고 있는데 ,다른분의 질문을 보고 ScrollSmoother가 무료가 되었다라고 말씀하셔서 활용해보려고 합니다. 사용법이 ID를 레퍼하여 자식 div를 tramsform으로 따라오는식으로 스무디 효과를 주는건 확인했습니다 근데 만약에 페러렉스 효과를 백그라운드 이미지에 반영해보려니 tramsform의 크기를 따라가는지 background fixed같은건 전혀먹히지가 않는거같네요 .. 스크롤링하면 부드럽게 스무스 하게 되면서 bg의 포지션도 살짝움직이는 식으로 구현해보려 했는데 혹시 방법이 없을지 질문드립니다. ㅜ
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.03
GSAP 플러그인의 무료화 관련
안녕하세요, 파트1부터 3까지 완강한 1인입니다. 파트3을 듣던 당시에는 GSAP ScrollSmoother 플러그인이 유료였는데, 얼마전에 모든 플러그인이 무료로 전환되었더라고요~ 그래서 강의 당시에 일부 플러그인들을 대체해서 강의해주신 부분이 있었는데,혹시 해당 부분에 대해서 추후 내용이 업데이트될 예정이 있을지 문의드립니다. ps. 모든 플러그인이 무료로 전환되면서 좀더 다양한 애니메이션이 가능해지니, 추후 파트4도 매우 기대가 되는 중입니다.
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.03
barba와 ScrollSmoother 사용했을 때 스크롤 업데이트
Single Page Application(3) 수강 중barba와 gsap ScrollSmoother 사용할 때는 scroll update를 어떻게 해야되나요?
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
scrolltrigger pin-spacer 영역 없애는 법 있나요?
선생님, 사진처럼 gallery를 감싸는 pin-spacer가 생겨서 하단에 하얀 영역이 생깁니다.scrolltrigger에서 자동적으로 만드는 거 같은데 이거 없애는 방법이 있을까요? background를 같은 색으로 하니 괜찮아보이긴 했지만 어쨌든 의도하지 않은 공간이 나타난거니 수정하고 싶어서요...gallery에 height: 100vh ! important를 해도 안 먹히는데 어떻게 하는 게 좋을까요?혹시나 하여 선생님 메일로 제 코드파일 전체를 미리 보내드립니다.
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
완성본 요청드립니다.
선생님 후기 작성했습니다.완성본 빠르게 메일 전달 부탁드립니다^^급하게 확인하고 싶어서요..
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
선생님 완성본 문의드립니다.
선생님 안녕하세요!빠르게 완강하였는데 빼먹은게 약간 있는 것 같아요ㅠㅠ혹시 전체 파일(완료파일)포함 전달 받을 수 있을까요?chaen32068@naver.com 부탁드립니다!!
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
simplyscroll Plugin에 대해서 질문드립니다.
섹션3에서 simplyscroll Plugin을 사용해서 사진들이 사선을 흘러가는 갤러리 부분에서 질문드립니다.수업자료로 받은 플러그인도 연결하고 소스도 그래도 넣었지만 요소검사를 했을때 아래 클래스가 붙어있어야 하는데 전혀 붙지가 않아서요,갭처한 코드 이미지를 보고 그대로 몇번을 다시 해봤지만 되질않아서요그 부분까지만 완성한 파일을 받아볼수 있을지요?kwanggony@naver.com.simply-scroll .simply-scroll-clip{}
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
가로스크롤 갤러리 반응형에서 scrollTrigger 동작 문제
안녕하세요 선생님. 강의 정말 잘 듣고 있습니다. 다름이 아니라, 가로 스크롤 반응형 제작중갤러리 형태를 세로 방향으로 바꾸는 과정에서 scrollTrigger 를 없애기 위해서 li 를 padding: 0; 으로 바꿔주면 된다고 하셨는데, 저는 적용이 되지 않아 반응형에서도 갤러리들이 가로방향으로 스크롤이 되는 문제가 생깁니다.. 도저히 이유를 모르겠어서 질문 올립니다감사합니다..work { position: relative; height: 100vh; border: 2px solid tomato; } .work ul { display: flex; padding: 3% 30%; box-sizing: border-box; } .work ul li { width: 600px; padding: 100px; box-sizing: border-box; flex-shrink: 0 !important; } @media screen and (max-width: 1024px) { .work { height: auto; } .work ul { padding: 0% 5%; justify-content: space-between; flex-wrap: wrap; } .work ul li { padding: 0; width: 45%; margin-top: 150px; } }
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
가로스크롤 scrollTrigger 가 작동되지 않습니다.
안녕하세요 선생님. 여러번 똑같이 따라 쳐보았으나..markers: true 여도 페이지에 scrollTrigger 표시가 되지 않고, 가로 스크롤이 동작하지 않습니다. console 창에 다른 오류 사항은 뜨지 않습니다. 무엇이 문제인지 전혀 모르겠어서 질문 남깁니다..$(function () { // GSAP Plugin gsap.registerPlugin(ScrollTrigger); ScrollTrigger.matchMedia({ "(min-width: 1024px)": function () { // horizontal scroll let list = gsap.utils.toArray(".work ul li"); let scrollTween = gsap.to(list, { xPercent: -100 * (list.length - 1), ease: "none", scrollTrigger: { trigger: ".work", pin: true, scrub: 1, start: "center center", end: "300%", markers: true, }, }); }, }); });
-
해결됨GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
ScrollTrigger 플러그인이 작동되지 않는 것 같습니다
안녕하세요$(function(){ gsap.registerPlugin(ScrollTrigger); ScrollTrigger.matchMedia({ '(min-width: 1024px)': function(){ let list = gsap.utils.toArray('.work ul li'); let scrollTween = gsap.to(list, { xPercent: -100 * (list.length - 1), ease: 'none', ScrollTrigger: { trigger: '.work', pin: true, scrub:1, start: 'center center', end: '300%', markers: true, } }); } }) });현재 여기까지 작성을 하였는데 창 새로고침과 동시에 갤러리 가장 끝쪽으로 넘어가버립니다.콘솔에서는 이렇게 뜨구요,,,markers도 안 보이는 걸 보니 플러그인이 작동되지 않는 것 같은데코드를 전부 똑같이 치고 몇 번을 다시 봤는데도 전혀 안 되네요...파일 첨부를 어떻게 하는지 몰라서 제 코드 파일 다운로드 링크를 함께 올립니다.한번 확인 가능할까요?ㅜㅜhttps://bigfile.mail.naver.com/download?fid=JYbZa6JnM6mraAUjKCY9KqvdHqUmKoEmFAU/KxvqKxg/HquXFA2dFAtqaxvjF6UlazKZaztlF4U/FrpSMoUdaAMqaxI0KrtlKA+oFAb=
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
포트폴리오 문의드립니다.
강사님 안녕하세요.gsap강의 소개에 있는 에이전시 합격 포트폴리오는 수강생들 각자 제작한걸까요?아니면 이번 수업중에 있는 내용일까요?너무 잘 만드셔서 참고해서 만들어보고 싶은데 정보를 얻을 수 없을까요.. 문의드립니다.
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.03
barba.js 사용시 페이지이동
barba.js 설정후 페이지이동시 gsap유료플러그인인 ScrollSmoother.js 사용법도 알려주실 수 있으실까요? 아무리 문서들 찾고 ai한테 질문해도 페이지이동시 스무스스크롤효과가 풀리는게 해결이 안되네요..
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.03
이상한 부분이 있어서 문의드립니다.
섹션3. Advanced Trigger 에서Animation Toggle(1) 강좌에서 문의드립니다. 첫번째 왼쪽에는 프로그래스 스크롤트리거를 넣었는데요,아래 소스에서 trigger: '.scroll-content' 에서 대상을 넣을걸로 알고 있는데요,마크업 구조상에 .scroll-content 라는 이름의 클래스명이 없는데 이건 어디서 나온걸까요<nav class="lnb"> <div class="progress"></div> <ul> <li> <div class="dot"></div> <span>Home</span> </li> <li> <div class="dot"></div> <span>About</span> </li> <li> <div class="dot"></div> <span>Product</span> </li> <li> <div class="dot"></div> <span>Portfolio</span> </li> <li> <div class="dot"></div> <span>Contact Us</span> </li> </ul> </nav> <div id="container"> <section class="section section01"><h2>section1</h2></section> <section class="section section02"><h2>section2</h2></section> <section class="section section03"><h2>section3</h2></section> <section class="section section04"><h2>section4</h2></section> <section class="section section05"><h2>section5</h2></section> </div> ScrollTrigger.create({ trigger: '.scroll-content', start: 'top top', end: 'bottom bottom', animation: gsap.from('.progress',{scaleY:0,transformOrigin:'center top',ease:'none'}), scrub: true, })
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.03
smooth-scrollbar 관련 질문
smooth-scrollbar js 는 scrollerProxy 랑 연동해야하는 귀찮은 문제가있는데Lenis는 scroll 값을 window.scrollY에 그대로 반영하면서 부드러운 스크롤 효과를 주기 때문에, GSAP의 ScrollTrigger랑 자연스럽게 연동되거든요굳이 왜 어려운길을 가는지 이유가 궁금합니다.scrollerProxy 의 학습을 위해서인지 아니면 Lenis의 어떠한 문제가있어서 인지 궁금해서 여쭈어 봅니다.