-1

これが私が取り組んでいるページです:http://kylemorgan49.com/sb/gridster/

ボックスにカーソルを合わせると背景の色が(css:hoverから)変わり、javascriptをクリックすると色が赤に変わります。だから、これで遊んだ後、これが描画アプリとして使用できることを想像することができます。では、複数のボックスをクリックしてドラッグすると、どのように色が変わるのでしょうか。そのため、すべてのボックスをクリックする必要はありません。ありがとう!ああ、右クリックしてソースを表示(fyi)をクリックするとコードを表示できます

4

2 に答える 2

0

mousedownとmouseupを使用してマウスボタンを追跡できます。var mouseButton = true;mousedownのように、変数を設定します。ボックスのマウスオーバーイベントも必要になります。マウスオーバーがトリガーされたら、mouseButtonの値を確認します。それが本当なら、箱の色を変えてください。

于 2012-10-18T03:16:42.210 に答える
0
  1. グリッドでmousedownイベントをバインドして、「クリック」フラグを設定します
  2. 各グリッドの正方形にmouseenterイベントをバインドします。マウスが入って「クリック」が正しい場合は、色を付けます
  3. グリッドでmouseupイベントをバインドして、「クリック」フラグをクリアします

例えば

var clicking = false;

// the user is holding the mouse button down, so we want to draw as they move over squares
$('#grid').mousedown(function(e) {
    clicking = true;

// the user has released the mouse, we don't want to draw anymore
}).mouseup(function(e) {
    clicking = false;
});

// when the user hovers a box, check if the user is holding down the mouse and drawing
$('#grid .box').mouseenter(function(e) {
    if (clicking) {
        $(this).addClass('colour');
    }
});
于 2012-10-18T03:18:00.183 に答える