한 가지 방법은 글로벌 변수를 생성하는 것, 사용자가 같은 요소를 통해 클릭 할 때 그 값을 수정할 : 이제
var mouseIsDown = false;
$('#mycanvas').on('mousedown', function() {mouseIsDown = true});
$('#mycanvas').on('mouseup', function() {mouseIsDown = false});
당신이해야 할 모든 였다면 'mousemove'을 결합하는 것입니다 호출하려는 함수에 전달하고 왼쪽 클릭의 상태를 확인하고 필요한 경우 이스케이프하는 함수 본문에 조건을 추가하기 만하면됩니다. 사용자가 요소 내부를 클릭 한 후 해제하기 전에 요소 외부 마우스를 드래그한다면
function fireThis(e) {
// if the user doesn't have the mouse down, then do nothing
if (mouseIsDown === false)
return;
// if the user does have the mouse down, do the following
// enter code here
// ....
// ....
}
// bind mousemove to function
$('#mycanvas').on('mousemove', fireThis);
이제, 당신은 '와 mouseUp이'트리거되지 얻을 않을 것을 알 수 있습니다 및 변수 mouseIsDown은 다시 변경되지 않습니다 거짓으로.
$('#mycanvas').on('mouseout', function() {mouseIsDown = false});
또는 여기
$(document).on('mouseup', function() {mouseIsDown = false});
은 예입니다 : 그 주위를 얻으려면, 당신도 바인드는 다음과 같은 세계적으로 mouseIsDown 또는 바인드 '와 mouseUp'리셋 함수에 '로 마우스를'수
http://jsfiddle.net/pikappa/HVTWb/