이번에는 div의 움직임을 제어하기 위해 방향키를 바인딩하는 방법과 div의 움직임을 제어하기 위해 방향키를 바인딩할 때 어떤 주의사항이 있는지 보여드리겠습니다. 바라보다.
CSS에서 DOM 요소의 <a href="http://www.php.cn/wiki/902.html" target="_blank">position<code><a href="http://www.php.cn/wiki/902.html" target="_blank">position</a>
属性为absolute或relative时,我们可以通过改变这个元素的left和top属性的具体值来控制元素在页面中显现的位置。
利用上述属性,我们可以简单实现一个元素在页面中的移动效果,这里我们采用JQuery的animate
方法来实现动画效果,利用keydown
监听方向键按下的事件(这里采用keydown而不是keyup,是为了能够在方向键被一直按着时,元素一直移动,keydown是监听按下事件,keyup是监听按键释放事件)。这里我们还可以利用animate
속성이 절대 또는 상대인 경우 를 변경할 수 있습니다. 요소 left 및 top 속성의 특정 값은 페이지에서 요소가 나타나는 위치를 제어합니다. 위 속성을 사용하면 페이지에서 요소의 이동 효과를 간단히 실현할 수 있습니다. 여기서는 JQuery
animate
메서드는 애니메이션 효과를 구현하는 데 사용되고 keydown
은 방향 키를 누르는 이벤트를 모니터링하는 데 사용됩니다(여기에서는 keyup 대신 keydown을 사용합니다. 방향 키를 항상 누를 때 요소가 계속 움직이도록 하기 위해 keydown은 누름 이벤트를 모니터링하고 keyup은 키 놓기 이벤트를 모니터링합니다. ). 여기서는 animate
메소드의 기능을 활용할 수도 있습니다. 즉, 속성 값이 '+=' 또는 '-='인 경우 먼저 원래 값을 기준으로 계산합니다. , 그리고 해당 속성이 주어지면 이는 C++의 연산자
와 일치합니다. 핵심 코드는 다음과 같습니다.$(document).keydown(function(event){ var keyNum = event.which; //获取键值 var Item = $('#switcher'); //要移动的元素 Item.css({position:'relative'}); //设置position switch(keyNum){ //判断按键 case 37: Item.animate({left:'-=20px'});break; case 38: Item.animate({top:'-=20px'});break; case 39: Item.animate({left:'+=20px'});break; case 40: Item.animate({top:'+=20px'});break; default: break; } });
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> jQuery控制p移动</title> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> </head> <body> <p id="switcher" style="width:200px;height:200px;border:solid 1px #000;"> </p> <script> $(document).keydown(function(event){ var keyNum = event.which; //获取键值 var Item = $('#switcher'); //要移动的元素 Item.css({position:'relative'}); //设置position switch(keyNum){ //判断按键 case 37: Item.animate({left:'-=20px'});break; case 38: Item.animate({top:'-=20px'});break; case 39: Item.animate({left:'+=20px'});break; case 40: Item.animate({top:'+=20px'});break; default: break; } }); </script> </body> </html>
위 내용은 화살표 키를 바인딩하여 div 이동을 제어하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!