私は、イベントを処理するためのjQueryの1.7を使用します。mousemove()イベントハンドラでどのマウスキーが押されていますか?
function objToStr(obj) {
return ...string representation of the object
}
$slider.mousedown(function(e) {
console.log("$slider.mousedown:\n" + objToStr(e));
});
$slider.mousemove(function(e) {
console.log("$slider.mousemove:\n" + objToStr(e));
});
、ここでの結果である:
$slider.mousedown:
altKey = false
attrChange = undefined
attrName = undefined
bubbles = true
button = 0
buttons = undefined
cancelable = true
clientX = 319
clientY = 13
ctrlKey = false
currentTarget = object
data = null
delegateTarget = object
eventPhase = 3
fromElement = undefined
handleObj = object
isDefaultPrevented = (function)
isImmediatePropagationStopped = (function)
isPropagationStopped = (function)
jQuery17209754494933906718 = true
metaKey = false
offsetX = undefined
offsetY = undefined
originalEvent = object
pageX = 319
pageY = 13
preventDefault = (function)
relatedNode = undefined
relatedTarget = null
screenX = 2876
screenY = 223
shiftKey = false
srcElement = undefined
stopImmediatePropagation = (function)
stopPropagation = (function)
target = object
timeStamp = 869699957
toElement = undefined
type = "mousedown"
view = object
which = 1
$slider.mousemove:
currentTarget = object
data = null
delegateTarget = object
exclusive = undefined
handleObj = object
isDefaultPrevented = (function)
isImmediatePropagationStopped = (function)
isPropagationStopped = (function)
isTrigger = true
jQuery17209754494933906718 = true
namespace = ""
namespace_re = null
preventDefault = (function)
result = undefined
stopImmediatePropagation = (function)
stopPropagation = (function)
target = object
timeStamp = 1334151903323
type = "mousemove"
私はmousemove
ためe.which
にアクセスする必要がありますが、どうやらそれは、イベントハンドラに渡されていませんか?
私はフラグのアルゴリズムをjQuery: Detecting pressed mouse button during mousemove eventで提案して使いたくありません。ユーザーがブラウザウィンドウの外にマウスボタンをドラッグしてそこにリリースすると、マウスがブラウザウィンドウに戻っても、それはまだ押されていると考えられます。その後、マウスがウィンドウを離れるときにハンドラーを追加する必要があります。それはあまりにも多くのことです。 mousemove()
のイベントハンドラでどのマウスボタンが押されたかを簡単に知る方法はありますか?
私はMouseMoveイベントのoriginalEventプロパティを欠けているために複数の変数を追加する必要がありますか?あなたはそれを検査しようとしましたか?実際に、それは私が探している 'e.originalEvent.which'パラメータが含まれていますが、それは常に' 1ですhttp://api.jquery.com/category/events/event-object/: – Bergi
originalEventは、イベント固有のデータが含まれています'どのマウスボタンを押しても問題ありません!かなり変だ。ユーザーがスライダーの内側をクリックすると、その外側でマウスをドラッグし、そこにボタンを離すと – AlexStack