jQuery实现通过方向键控制div块上下左右移动的方法【测试可用】

 更新时间:2018年04月26日 11:58:33   作者:pfr  
这篇文章主要介绍了jQuery实现通过方向键控制div块上下左右移动的方法,涉及jQuery结合键盘事件响应动态修改页面元素属性相关操作技巧,需要的朋友可以参考下

本文实例讲述了jQuery实现通过方向键控制div块上下左右移动的方法。分享给大家供大家参考,具体如下:

在CSS中当DOM元素的position属性为absoluterelative时,我们可以通过改变这个元素的lefttop属性的具体值来控制元素在页面中显现的位置。

利用上述属性,我们可以简单实现一个元素在页面中的移动效果,这里我们采用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>www.jb51.net jQuery控制div移动</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');  //要移动的元素
    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>

运行效果:

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery切换特效与技巧总结》、《jQuery动画与特效用法总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery常见经典特效汇总》及《jquery选择器用法总结

希望本文所述对大家jQuery程序设计有所帮助。

相关文章

  • jQuery实现锁定页面元素(表格列)

    jQuery实现锁定页面元素(表格列)

    这篇文章主要为大家详细介绍了jQuery实现锁定页面元素,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • jquery下jstree简单应用 - v1.0

    jquery下jstree简单应用 - v1.0

    jquery下jstree简单应用,学习jstree的朋友可以参考下。
    2011-04-04
  • jQuery实现全选、反选和不选功能

    jQuery实现全选、反选和不选功能

    这篇文章主要为大家详细介绍了jQuery实现全选、反选和不选功能 ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • 基于jquery实现左右按钮点击的图片切换效果

    基于jquery实现左右按钮点击的图片切换效果

    这篇文章主要介绍了基于jquery实现左右按钮点击的图片切换效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • jQuery动态添加与删除tr行实例代码

    jQuery动态添加与删除tr行实例代码

    最近由于项目的需要,需要动态的添加和删除table中的tr,感觉用JS可以实现,但是在网上找了一下,单纯的自己写JS,感觉太麻烦,而且也不好维护。于是想到了最近学的jQuery。这篇文章给大家用实例介绍了jQuery动态添加与删除tr行的方法,有需要的朋友们可以参考借鉴。
    2016-10-10
  • jquery获取自定义属性(attr和prop)实例介绍

    jquery获取自定义属性(attr和prop)实例介绍

    jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式
    2013-04-04
  • jquery实现图片随机排列的方法

    jquery实现图片随机排列的方法

    这篇文章主要介绍了jquery实现图片随机排列的方法,涉及jQuery操作图片的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-05-05
  • jQuery实现HTML5 placeholder效果实例

    jQuery实现HTML5 placeholder效果实例

    这篇文章主要介绍了jQuery实现HTML5 placeholder效果实例,本文目的主要是在需要兼容一些浏览器时使用,需要的朋友可以参考下
    2014-12-12
  • 深入理解jQuery中live与bind方法的区别

    深入理解jQuery中live与bind方法的区别

    本篇文章主要是对jQuery中live与bind方法的区别进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2013-12-12
  • Jquery 基础学习笔记之文档处理

    Jquery 基础学习笔记之文档处理

    本节让我们继续Jquery知识的了解:文档处理。文档处理主要是对HTML元素进行一些增操作,删除操作,复制操作,替换操作。
    2009-05-05

最新评论