1. 문자열을 하나씩 글꼴로 변경하는 방법을 제어해 보겠습니다.
1 문자열 내용 가져오기
2 문자열 내용 지우기
3 문자열 트래버스 , 그런 다음 하나씩 잘라냅니다.
4 잘라낸 텍스트에 위치 추가
5 추가된 위치 텍스트를 얻은 요소에 다시 할당합니다.
2. 마우스가 위로 슬라이드된 후 텍스트 점프를 구현하는 방법
1 변수 0 정의
2 타이머 정의
3 변수를 정의합니다. 지속적으로 감소
4 요소의 top == 변수 변경
5 변수가 특정 높이에 도달하면 변수가 계속 증가하도록 합니다
6 변수가 감소하는 경우 0(자체 위치),
7 요소의 상단 = 0(자체 위치)을 변경하려면 애니메이션 지우기
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title> 文字跳动特效-vico </title> <style type="text/css"> #txtDom{ padding: 50px; width:500px; margin: 0 auto; font-size: 16px; font-family: "微软雅黑"; line-height: 1.3em; text-indent: 2em;} </style> </head> <body> <div id="txtDom"> 要是没有错误和失败,你就不会学到东西;要是没有痛苦,你就不会长大。 一旦你明白了这些,你就知道了一切事情都是为了某种目的而发生。 所以不要紧张或者认为生活不公平,因为一切事情都有原因,只有时间能诉说教会了我们什么。 </div> <script type="text/javascript"> var txtAnim = { len: 0, txtDom: "", arrTxt: [], init: function(obj) { this.obj = obj; this.txtDom = obj.innerHTML.replace(/\s+/g, ""); this.len = this.txtDom.length; obj.innerHTML = ""; this.addDom(); }, addDom: function() { for (var i = 0; i < this.len; i++) { var spanDom = document.createElement("span"); spanDom.innerHTML = this.txtDom.substring(i, i + 1); this.obj.appendChild(spanDom); this.arrTxt.push(spanDom); }; for (var j = 0; j < this.len; j++) { this.arrTxt[j].style.position = "relative"; }; this.strat(); }, strat: function() { for (var i = 0; i < this.len; i++) { this.arrTxt[i].onmouseover = function() { this.stop = 0; this.speed = -1; var $this = this; this.timer = setInterval(function() { $this.stop += $this.speed; //0 += -1 if ($this.stop <= -20) { $this.speed = 1; } $this.style.top = $this.stop + "px"; if ($this.stop >= 0) { clearInterval($this.timer) $this.style.top = 0 + "px"; }; }, 15); }; } } } var txtDom = document.getElementById("txtDom"); txtAnim.init(txtDom); </script> </body> </html>
위는 편집기에서 도입한 Javascrip 구현입니다. 텍스트 점프 효과를 구현해 보세요. 모두에게 도움이 되기를 바랍니다.