1

私はjQueryに比較的慣れていないので、初歩的な質問をしていたら申し訳ありませんが、イベントのトリガーに問題があります。現在、ユーザーが表示ウィンドウ (固定 div) 内の任意の方向に画像をパンできる、一種の画像パンニング ツールを設計しようとしています。マウスを押し下げると、関数はいくつかの計算を実行し始め、マウスを動かすと、値を

$(this).css('background-position', both);

ここで、両方が新しく計算された位置です。

この時点までは機能しますが、mousemoveイベントからのリリースに問題があります。最初のマウスダウンとマウス移動の後、マウスアップでパンを解除できないようで、ユーザーはクリックせずに画像をパンできます。

基本的なスケルトンは次の#testとおりです (表示 div を参照)。

$("#test").mousedown( function(e) {
                
/* Various Calculations*/
            
$(this).mousemove( function(f) {

/* More Calculations, variable 'both' is assigned new coord value */
                
$(this).css('background-position', both);
    });         
});

いろいろな場所でイベントをつけてみたのmouseupですが、どこがいいのか、どうやってリリースすればいいのかよくわかりません。どんな助けでも大歓迎です!

4

2 に答える 2

2

イベントを削除するには、オブジェクトからアンバインドする必要があります。

$("#test").unbind("mousemove");

あなたの質問の残りの部分は私にはわかりません

于 2009-08-19T22:04:17.650 に答える
1

別の方法として、必要に応じてjQuery UIにドラッグ可能なものがあります。開始、停止、およびドラッグのイベントが含まれます。

それはすべて、別の依存関係が必要かどうかによって異なります。

少なくとも、イベント シーケンスを実行して同じ動作をシミュレートする方法を調べることができます。

于 2009-08-19T22:20:13.500 に答える