티스토리 뷰
자바스크립트를 이용하여 마우스가 움직일때마다 텍스트 효과가 생기는 사이트입니다.
화면에서 마우스를 움직이면 텍스트가 움직이는 효과를 만들었습니다.
한 문장당 오렌지색 두개 흰색 두개를 만든후 overflow: hidden 을 사용하여 반을 가린후
마우스가 움직일때마다 보여지도록 만들었습니다.
이 예제는 스크립트보다 CSS요소가 많이 들어가 소스코드를 통째로업로드 시켜드리겠습니다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>마우스 이펙트</title>
</head>
<link rel="stylesheet" href="css/NexonLv1Gothic.css">
<link rel="stylesheet" href="css/dracula.min.css">
<link rel="stylesheet" href="css/custom.css">
<style>
body::before {
background: rgba(40, 41, 43, 0.3)
}
.mouse__wrap {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
color: #fff;
width: 100%;
height: 100vh;
overflow: hidden;
cursor: none;
}
.mouse__img {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
z-index: -1;
width: 50%;
}
.mouse__text {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -20%);
color: #fff;
font-size: 3vw;
line-height: 1.5;
}
.mouse__text .line {
width: 100%;
display: flex;
}
.mouse__text .line .left {
width: 50vw;
color: sandybrown;
transform: skew(0deg, -15deg);
overflow: hidden;
}
.mouse__text .line .left .spanWrap {
width: 100vw;
text-align: center;
}
.mouse__text .line .right {
width: 50vw;
transform: skew(0deg, 15deg);
overflow: hidden;
}
.mouse__text .line .right .spanWrap {
width: 100vw;
text-align: center;
transform: translateX(-50vw);
}
.cursor {
position: absolute;
left: 0; top: 0;
width: 20px;
height: 20px;
z-index: 99999;
border-radius: 50%;
background: rgba(255, 255, 255, 0.8);
user-select: none;
pointer-events: none;
}
</style>
<body class="img11">
<!-- main -->
<main>
<section id="mouseType01">
<div class="cursor"></div>
<div class="mouse__wrap">
<div class="mouse__img">
<figure>
<img src="img/mouseimg03.jpg" alt="이미지">
</figure>
</div>
<div class="mouse__text">
<div class="line">
<div class="left">
<div class="spanWrap">
<div class="spanSlow">Believe you can and</div>
</div>
</div>
<div class="right">
<div class="spanWrap">
<div class="spanSlow">Believe you can and</div>
</div>
</div>
</div>
<div class="line">
<div class="left">
<div class="spanWrap">
<div class="spanFast">You`re halfway there.</div>
</div>
</div>
<div class="right">
<div class="spanWrap">
<div class="spanFast">You`re halfway there.</div>
</div>
</div>
</div>
<div class="line">
<div class="left">
<div class="spanWrap">
<div class="spanSlow">할 수 있다고 믿으면</div>
</div>
</div>
<div class="right">
<div class="spanWrap">
<div class="spanSlow">할 수 있다고 믿으면</div>
</div>
</div>
</div>
<div class="line">
<div class="left">
<div class="spanWrap">
<div class="spanFast">반은 온 것이다.</div>
</div>
</div>
<div class="right">
<div class="spanWrap">
<div class="spanFast">반은 온 것이다.</div>
</div>
</div>
</div>
</div>
</div>
</section>
</main>
<!-- //main -->
<!-- info -->
<div class="info">
<div class="title">
<h1><a href="mouseEffect.html">JavaScript Mouse Effect06</a></h1>
<p>마우스 이펙트 - 텍스트 효과</p>
</div>
<div class="number">
<ul>
<li><a href="mouseEffect01.html">1</a></li>
<li><a href="mouseEffect02.html">2</a></li>
<li><a href="mouseEffect03.html">3</a></li>
<li><a href="mouseEffect04.html">4</a></li>
<li><a href="mouseEffect05.html">5</a></li>
<li class="active"><a href="mouseEffect06.html">6</a></li>
<li><a href="mouseEffect07.html">7</a></li>
<li><a href="mouseEffect08.html">8</a></li>
<!-- <li><a href="mouseEffect09.html">9</a></li> -->
</ul>
</div>
<!-- script -->
<script src="js/highlight.min.js"></script>
<script src="js/custom.js"></script>
<script src="js/gsap.min.js"></script>
<script>
highlight();
modal();
tapMenu();
function mousemove(e){
let positionSlow = (e.pageX - (window.innerWidth/2)) * 0.1;
let positionFast = (e.pageX - (window.innerWidth/2)) * 0.2;
gsap.to(".spanSlow", {duration: 0.4, x: positionSlow});
gsap.to(".spanFast", {duration: 0.4, x: -positionFast});
gsap.to(".cursor", {duration: 0.3, left: e.pageX, top: e.pageY});
}
document.addEventListener("mousemove", mousemove);
</script>
</body>
</html>
반응형
'Script Sample > Mouse Effect' 카테고리의 다른 글
Mouse Effect - 이미지 오버 효과 (0) | 2022.04.13 |
---|---|
MouseEffect - 마우스효과2 (0) | 2022.02.24 |
MouseEffect - 마우스효과 (0) | 2022.02.24 |
MouseEffect - getBoundingClientRect (0) | 2022.02.24 |
MouesEffect - gsap 사용 (0) | 2022.02.24 |
댓글
© 2022 babydevelop