jQuery實(shí)現(xiàn)通過(guò)方向鍵控制div塊上下左右移動(dòng)的方法【測(cè)試可用】
本文實(shí)例講述了jQuery實(shí)現(xiàn)通過(guò)方向鍵控制div塊上下左右移動(dòng)的方法。分享給大家供大家參考,具體如下:
在CSS中當(dāng)DOM元素的position屬性為absolute或relative時(shí),我們可以通過(guò)改變這個(gè)元素的left和top屬性的具體值來(lái)控制元素在頁(yè)面中顯現(xiàn)的位置。
利用上述屬性,我們可以簡(jiǎn)單實(shí)現(xiàn)一個(gè)元素在頁(yè)面中的移動(dòng)效果,這里我們采用JQuery的animate方法來(lái)實(shí)現(xiàn)動(dòng)畫效果,利用keydown監(jiān)聽(tīng)方向鍵按下的事件(這里采用keydown而不是keyup,是為了能夠在方向鍵被一直按著時(shí),元素一直移動(dòng),keydown是監(jiān)聽(tīng)按下事件,keyup是監(jiān)聽(tīng)按鍵釋放事件)。這里我們還可以利用animate方法的一個(gè)特點(diǎn),就是當(dāng)其屬性的值為'+='或'-='之類時(shí),它會(huì)根據(jù)原先的值先進(jìn)行計(jì)算,再賦給相應(yīng)的屬性,這個(gè)和C++的運(yùn)算符是一致的。
核心代碼如下所示:
$(document).keydown(function(event){
var keyNum = event.which; //獲取鍵值
var Item = $('#switcher'); //要移動(dòng)的元素
Item.css({position:'relative'}); //設(shè)置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>www.fzitv.net jQuery控制div移動(dòng)</title>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
</head>
<body>
<div id="switcher" style="width:200px;height:200px;border:solid 1px #000;">
</div>
<script>
$(document).keydown(function(event){
var keyNum = event.which; //獲取鍵值
var Item = $('#switcher'); //要移動(dòng)的元素
Item.css({position:'relative'}); //設(shè)置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>
運(yùn)行效果:

更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery切換特效與技巧總結(jié)》、《jQuery動(dòng)畫與特效用法總結(jié)》、《jQuery擴(kuò)展技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery常見(jiàn)經(jīng)典特效匯總》及《jquery選擇器用法總結(jié)》
希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。
相關(guān)文章
jQuery實(shí)現(xiàn)定位滾動(dòng)條位置
基于jQuery實(shí)現(xiàn)滾動(dòng)條滾動(dòng)到子元素位置以此來(lái)定位滾動(dòng)條位置,下面是小編給大家?guī)?lái)的實(shí)現(xiàn)代碼,代碼比較簡(jiǎn)單,需要的朋友可以參考下2016-08-08
jquery實(shí)現(xiàn)滑動(dòng)圖片自己測(cè)試的例子
最近使用jquery寫了一個(gè)圖片滑動(dòng)的插件,雖然還是有些問(wèn)題存在,用法很簡(jiǎn)單,希望對(duì)大家有所幫助2013-11-11
jQuery的Cookie封裝,與PHP交互的簡(jiǎn)單實(shí)現(xiàn)
下面小編就為大家?guī)?lái)一篇jQuery的Cookie封裝,與PHP交互的簡(jiǎn)單實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-10-10
jQuery學(xué)習(xí)筆記 獲取jQuery對(duì)象
為了將Web的結(jié)構(gòu)層和表現(xiàn)層、行為層徹底分離,就不應(yīng)該在HTML標(biāo)簽上直接定義樣式或事件等。這意味著要想設(shè)置頁(yè)面中的某個(gè)元素,就需要先把這個(gè)元素選擇出來(lái),選擇器正是解決這個(gè)問(wèn)題的技術(shù)2012-09-09
jquery實(shí)現(xiàn)類似淘寶星星評(píng)分功能有截圖
本節(jié)主要介紹了jquery實(shí)現(xiàn)類似淘寶星星評(píng)分功能,經(jīng)測(cè)試效果相當(dāng)不錯(cuò),有圖有真相,喜歡的朋友可以參考下2014-09-09
JQuery常見(jiàn)節(jié)點(diǎn)操作實(shí)例分析
這篇文章主要介紹了JQuery常見(jiàn)節(jié)點(diǎn)操作,結(jié)合實(shí)例形式分析了jQuery針對(duì)元素節(jié)點(diǎn)的添加、刪除常見(jiàn)操作函數(shù)使用技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2019-05-05
了解jQuery技巧來(lái)提高你的代碼(個(gè)人覺(jué)得那個(gè)jquery的手冊(cè)很不錯(cuò))
這個(gè)jQuery選擇器實(shí)驗(yàn)室非???,它能在線免費(fèi)使用,當(dāng)然你也能下來(lái)到本地離線使用。這個(gè)測(cè)試頁(yè)面包含復(fù)雜的HTML組合字段,然后你能嘗試預(yù)定義使用各種jQuery選擇器。如果這還不夠你也可以自定義選擇器2012-02-02

