Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript 및 SVG를 사용하여 스크롤에 그리는 방법은 무엇입니까?


JavaScript 및 SVG를 사용하여 스크롤에 그리기 위한 코드는 다음과 같습니다. −

예시

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<style>
   body {
      height: 2000px;
      background: #f1f1f1;
   }
   svg {
      position: fixed;
      top: 15%;
      width: 400px;
      height: 210px;
      margin-left: -50px;
   }
</style>
</head>
<body>
<h1>Scroll Using JavaScript and SVG example</h1>
<svg>
<path
fill="none"
stroke="purple"
stroke-width="5"
id="polygon"
d="M 150 350 Q 150 50 250 150 Q 250 550 300 150 Q 350 50 400 300"/>
</svg>
<script>
   var polygon = document.getElementById("polygon");
   var length = polygon.getTotalLength();
   polygon.style.strokeDasharray = length;
   polygon.style.strokeDashoffset = length;
   window.addEventListener("scroll", drawPoly);
   function drawPoly() {
      var scrollpercent = (document.body.scrollTop + document.documentElement.scrollTop) /
(document.documentElement.scrollHeight - document.documentElement.clientHeight);
      var draw = length * scrollpercent;
      polygon.style.strokeDashoffset = length - draw;
   }
</script>
</body>
</html>

출력

위의 코드는 다음 출력을 생성합니다 -

JavaScript 및 SVG를 사용하여 스크롤에 그리는 방법은 무엇입니까?

페이지 하단으로 스크롤 시 -

JavaScript 및 SVG를 사용하여 스크롤에 그리는 방법은 무엇입니까?