친구가 이 효과를 사용하고 싶어해서 코드에 아직 개선할 부분이 있습니다. 더 간결하게 수정한 다음 게시하여 모든 사람과 공유할 수 있습니다. 새 문서 body{margin:0px;font:"宋体" 12px; background-color:#000; color:#fff} 이름: 렝 펑 이메일: cityvoice@hotmail.com 출생지 : 후난 취미: 공놀이, 여행, 스타크래프트, 노래부르기 [Ctrl A 모두 선택 참고: 외부 J를 도입해야 하는 경우 실행하려면 새로 고쳐야 합니다 ] var typer={ container : null, speed : 100 , innerHTML : null , curpos : 0, interval1 : null, interval2 : null, init : function(obj,speed){ typer.container = obj; if(speed)typer.speed = speed; typer.start(); }, start : function(){ typer.innerHTML = clearSpace(typer.container.innerHTML).toLowerCase(); typer.container.innerHTML = ""; typer.interval1 = setInterval("typer.type()",typer.speed); }, type : function(){ if(typer.curpos<typer.innerHTML.length){ if(typer.container.innerHTML.substring(typer.container.innerHTML.length-1)!="_"){ typer.container.innerHTML +="_"; }else{ var tempStr = ""; if(typer.innerHTML.length>=typer.curpos+4){ if(typer.innerHTML.substring(typer.curpos,typer.curpos+4)=="") { tempStr=""; typer.curpos = typer.curpos+4; }else if(typer.innerHTML.substring(typer.curpos,typer.curpos+4)==" "){ tempStr=" "; typer.curpos = typer.curpos+4; }else{ if(typer.innerHTML.length>=typer.curpos+3 && typer.innerHTML.substring(typer.curpos,typer.curpos+3)=="<p>"){ tempStr="<p>"; typer.curpos = typer.curpos+3; }else{ tempStr=typer.innerHTML.substring(typer.curpos,typer.curpos+1); typer.curpos++; } } }else if(typer.innerHTML.length>=typer.curpos+3){ if(typer.innerHTML.substring(typer.curpos,typer.curpos+3)=="<p>"){ tempStr="<p>"; typer.curpos = typer.curpos+3; }else{ tempStr=typer.innerHTML.substring(typer.curpos,typer.curpos+1); typer.curpos++; } }else{ tempStr=typer.innerHTML.substring(typer.curpos,typer.curpos+1); typer.curpos++; } typer.container.innerHTML = typer.container.innerHTML.substring(0,typer.container.innerHTML.length-1)+tempStr; } }else{ clearInterval(typer.interval1); typer.interval2 = setInterval("typer.last()",typer.speed); } }, last : function(){ if(typer.container.innerHTML.substring(typer.container.innerHTML.length-1)!="_") typer.container.innerHTML +="_"; else typer.container.innerHTML = typer.container.innerHTML.substring(0,typer.container.innerHTML.length-1); } } function clearSpace(str){ if(str!=""){ str = str.replace(/^\s*/g,"").replace(/\s*$/g,""); } return str; }