這次帶給大家如何綁定方向鍵控制div移動,綁定方向鍵控制div移動的注意事項有哪些,下面就是實戰案例,一起來看一下。
在CSS中當DOM元素的<a href="//m.sbmmt.com/wiki/902.html" target="_blank">position</a>
屬性為absolute或relative時,我們可以透過改變這個元素的left和top屬性的具體值來控制元素在頁面中顯現的位置。
利用上述屬性,我們可以簡單實作一個元素在頁面中的移動效果,這裡我們採用JQuery的animate
方法來實現動畫效果,利用keydown
監聽方向鍵按下的事件(這裡採用keydown而不是keyup,是為了能夠在方向鍵被一直按著時,元素一直移動,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>
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是如何綁定方向鍵控制div移動的詳細內容。更多資訊請關注PHP中文網其他相關文章!