서문: 창 흔들기 응용 프로그램은 매우 일반적입니다. 예를 들어 가장 일반적으로 사용되는 채팅 소프트웨어 QQ에는 양식을 작성할 때 창 흔들기와 오류 알림이 있으므로 다음과 같이 아주 간단한 예도 작성했습니다. 특정 코드는
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>窗口震动</title> </head> <body> <div style="background:#ff0; width:200px; height:200px; margin-top:200px; margin-left:600px" id="win"></div> <script type="text/javascript"> var loop = 0; //统计震动次数 var timer; //定时器引用 var offx; //水平偏移量 var offy; //垂直偏移量 var dir; //控制震动方向 timer = setInterval(function(){ var win = document.getElementById("win"); if (loop > 100) { clearInterval(timer); //震动次数超过100就停止定时器 } dir = Math.random()*10 > 5 ? 1 : -1; //获得震动方向 offx = Math.random()*20*dir; offy = Math.random()*20*dir; win.style.marginTop = 200+offx+"px"; win.style.marginLeft = 600+offy+"px"; loop++; },10) //每隔10毫秒震动一次 </script> </body> </html>
코드에서는 디더링의 방향과 범위를 제어하기 위해 난수를 주로 사용하고, setInterval 함수를 사용하여 디더링 빈도를 설정하고 루프 변수는 지터 수를 한 번 설정합니다. 실제 필요에 따라 주파수, 범위 및 디더링 수를 설정할 수 있습니다.