레인보우 스크롤
4718 단어 funcsswebdevjavascript
제목(또는 무엇이든)의 색상은 페이지가 얼마나 아래로 스크롤되었는지에 따라 변경됩니다.
이 함수는 백분율 값을 제공합니다.
function getScrollPercent() {
var h = document.documentElement,
b = document.body,
st = 'scrollTop',
sh = 'scrollHeight';
return (h[st] || b[st]) / ((h[sh] || b[sh]) - h.clientHeight) * 100;
}
We have to multiply that by 3.6 so that we have the HSL circle complete.
그런 다음 이벤트 리스너만:
var r = document.querySelector(':root');
document.addEventListener('scroll', (e) => {
let percent = getScrollPercent();
let hsl = Math.round(percent * 3.6);
r.style.setProperty('--rainbowColor', 'hsl(' + hsl + ', 70%, 50%)');
})
그리고 해당 CSS:
:root {
--rainbowColor: hsl(0, 100%, 50%);
}
h1,h2,strong {
color: var(--rainbowColor);
}
Try it out
Repo
Reference
이 문제에 관하여(레인보우 스크롤), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kolja/rainbow-scroll-3o7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)