我嘗試使用觸發事件。 如果我用我的雙手獨立觸發事件,我沒有問題和事件參數滿足我需要的所有文件。 如果我使用jQuery觸發器()所有的作品,但事件參數幾乎沒有得到。爲什麼事件參數在使用jQuery trigger()調用時沒有值?
<div id="dragDiv">
<button id='dragButton' >tap</button>
</div>
$("#dragButton")
.hammer({
// options...
})
.bind("drag", doCall);
function doCall(ev){
console.log(ev);
}
$('#dragButton').trigger("drag");
結果
v.Event {type: "drag", timeStamp: 1357286124612, jQuery18306904058358632028: true, isTrigger: true, exclusive: undefined…}
currentTarget: <button>
data: null
delegateTarget: <button>
exclusive: undefined
handleObj: Object
isTrigger: true
jQuery18306904058358632028: true
namespace: ""
namespace_re: null
result: undefined
target: <button>
timeStamp: 1357286124612
type: "drag"
__proto__: Object
,但我需要
v.Event {type: "drag", originalEvent: MouseEvent, position: Object, direction: "right", distance: 22.825424421026653…}
angle: -28.810793742973058
currentTarget: <button>
data: null
delegateTarget: <button>
direction: "right"
distance: 22.825424421026653
distanceX: 20
distanceY: -11
exclusive: undefined
handleObj: Object
isTrigger: true
jQuery18306904058358632028: true
namespace: ""
namespace_re: null
originalEvent: MouseEvent
position: Object
result: undefined
target: <button>
timeStamp: 1357286139160
touches: Array[1]
type: "drag"
__proto__: Object
就是這樣。例如,如果以編程方式觸發單擊事件,那麼鼠標實際上並不具有特定位置,因此事件對象不包含鼠標座標。我認爲你不能在這裏做很多事情。在這種情況下它是相似的。你沒有向任何方向拖動任何元素,因此處理程序確實不知道用哪個值來填充事件對象。 –