Rumah  >  Artikel  >  hujung hadapan web  >  jQuery通过方向键控制div上下左右移动步骤详解

jQuery通过方向键控制div上下左右移动步骤详解

php中世界最好的语言
php中世界最好的语言asal
2018-05-15 11:20:432866semak imbas

这次给大家带来jQuery通过方向键控制div上下左右移动步骤详解,jQuery通过方向键控制div上下左右移动的注意事项有哪些,下面就是实战案例,一起来看一下。

在CSS中当DOM元素的<a href="http://www.php.cn/wiki/902.html" target="_blank">position</a>属性为absoluterelative时,我们可以通过改变这个元素的lefttop属性的具体值来控制元素在页面中显现的位置。

利用上述属性,我们可以简单实现一个元素在页面中的移动效果,这里我们采用JQuery的animate方法来实现动画效果,利用keydown监听方向键按下的事件(这里采用keydown而不是keyup,是为了能够在方向键被一直按着时,元素一直移动,keydown是监听按下事件,keyup是监听按键释放事件)。这里我们还可以利用animate方法的一个特点,就是当其属性的值为'+='或'-='之类时,它会根据原先的值先进行计算,再赋给相应的属性,这个和C++的运算符是一致的。

核心代码如下所示:

$(document).keydown(function(event){
    var keyNum = event.which;  //获取键值
    var Item = $(&#39;#switcher&#39;);  //要移动的元素
    Item.css({position:&#39;relative&#39;}); //设置position
    switch(keyNum){ //判断按键
    case 37: Item.animate({left:&#39;-=20px&#39;});break;
    case 38: Item.animate({top:&#39;-=20px&#39;});break;
    case 39: Item.animate({left:&#39;+=20px&#39;});break;
    case 40: Item.animate({top:&#39;+=20px&#39;});break;
    default:
      break;
    }
});

完整示例代码如下:





jQuery控制p移动



<script> $(document).keydown(function(event){ var keyNum = event.which; //获取键值 var Item = $(&amp;#39;#switcher&amp;#39;); //要移动的元素 Item.css({position:&amp;#39;relative&amp;#39;}); //设置position switch(keyNum){ //判断按键 case 37: Item.animate({left:&amp;#39;-=20px&amp;#39;});break; case 38: Item.animate({top:&amp;#39;-=20px&amp;#39;});break; case 39: Item.animate({left:&amp;#39;+=20px&amp;#39;});break; case 40: Item.animate({top:&amp;#39;+=20px&amp;#39;});break; default: break; } }); </script>

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

jQuery实现电子时钟功能步骤详解

Vue nextTick 机制使用详解

Atas ialah kandungan terperinci jQuery通过方向键控制div上下左右移动步骤详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn