ホームページ > ウェブフロントエンド > jsチュートリアル > 矢印キーをバインドして div の移動を制御する方法

矢印キーをバインドして div の移動を制御する方法

php中世界最好的语言
リリース: 2018-06-04 15:37:44
オリジナル
2154 人が閲覧しました

今回は、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>属性为absoluterelative时,我们可以通过改变这个元素的lefttop属性的具体值来控制元素在页面中显现的位置。

利用上述属性,我们可以简单实现一个元素在页面中的移动效果,这里我们采用JQueryanimate方法来实现动画效果,利用keydown监听方向键按下的事件(这里采用keydown而不是keyup,是为了能够在方向键被一直按着时,元素一直移动,keydown是监听按下事件,keyup是监听按键释放事件)。这里我们还可以利用animate 属性が 絶対または相対。このを変更できます。 element left 属性と top 属性の特定の値は、ページ上で要素が表示される位置を制御します。 上記の属性を使用すると、ページ上の要素の移動効果を簡単に実現できます。ここでは JQuery

animate メソッドはアニメーション効果を実現するために使用され、keydown は方向キーが押されたイベントを監視するために使用されます (ここでは、 keyup の代わりに keydown が使用されています。これは、方向キーが常に押されているときに要素を動かし続けるためです。 keydown は押下イベントを監視し、 keyup はキー リリース イベントを監視します。 。ここでは、animate メソッドの機能を利用することもできます。つまり、その属性の値が「+=」または「-=」の場合、最初に元の値に基づいて計算されます。対応する属性を考慮すると、これは C++ の

operator

と一致します。

コア コードは次のとおりです:

$(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中国語ウェブサイトで!

推奨書籍:

r.js CSSファイルの操作方法


コンソールにログ情報を出力する方法🎜🎜🎜

以上が矢印キーをバインドして div の移動を制御する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート