ユーザーがマウスを押している間に関数を実行し、マウスを上げたときに関数を終了できるかどうかを確認するために、短い小さなコードをいじっています。この例では、ユーザーがボタンを押したままマウスを動かすと、画面に表示される数値をインクリメントしようとしています。ボタンを離すとフリーズして停止したいのですが、ボタンが押されていなくてもカウンターがリセットされ、カウントは0から続行されます...
function dragInit(state, e) {
var i = 0;
$(document).on("mousemove", function() {
if (state) {
i+=1;
$('#debug').text(i); //Show the value in a div
}
});
}
$(document).ready(function() {
$(document).on(
{mousedown: function(e) {
var state = true;
dragInit(e, state);
},
mouseup: function(e) {
var state = false;
dragInit(e, state);
}
});
});
余談ですが、変数が真か偽かを画面上に表示する方法はありますか? 試してみると、[object Object] とだけ表示されます。