[Edge]。→、
キャプチャされたポインターが解放されたときに発生します。
バブリング | ¶あり |
---|---|
キャンセル可能 | ¶いいえ |
インターフェイス | PointerEvent |
イベント ハンドラー プロパティ |
有効な PointerEvent のプロパティ
このインターフェイスは、MouseEvent および Event からプロパティを継承します。
この例では、要素の lostpointercapture イベントをリッスンし、pointerdown で要素のポインターをキャプチャします。その後、ユーザーがポインターを離すと、lostpointercapture イベントが発生します。
const para = document.querySelector('p'); para.addEventListener('lostpointercapture', () => { console.log('I\'ve been released!') }); para.addEventListener('pointerdown', (event) => { para.setPointerCapture(event.pointerId); });
同じ例ですが、onlostpointercapture イベント ハンドラー プロパティを使用します。
const para = document.querySelector('p'); para.onlostpointercapture = () => { console.log('I\'ve been released!') }; para.addEventListener('pointerdown', (event) => { para.setPointerCapture(event.pointerId); });
HTML:
<SPAN id=IdTest>[ここでポインター操作…]</SPAN><BR> <SPAN id=IdLog></SPAN>
JavaScript:
function JobPD(eve){ //pointerdownイベントの処理:クリックまたは、ボタンを押して放しても発生した。 D=eve; //=[object]:[object PointerEvent]。要素でクリック。IdTest.setPointerCapture(eve.pointerId); //ポインターキャプチャー。 } function Job(eve){ DA=eve; //=[object]:[object PointerEvent]詳細
//isTrusted=[boolean]:true //pointerId=[number]:1 //width=[number]:1 //height=[number]:1 //pressure=[number]:0.5 //tiltX=[number]:0 //tiltY=[number]:0 //azimuthAngle=[number]:0 //altitudeAngle=[number]:1.5707963267948966 //tangentialPressure=[number]:0 //twist=[number]:0 //pointerType=[string]:mouse //isPrimary=[boolean]:true //getCoalescedEvents=[function]:function getCoalescedEvents() { [native code] } //getPredictedEvents=[function]:function getPredictedEvents() { [native code] } //screenX=[number]:386 //screenY=[number]:274 //clientX=[number]:179.5625 //clientY=[number]:199 //ctrlKey=[boolean]:false //shiftKey=[boolean]:false //altKey=[boolean]:false //metaKey=[boolean]:false //button=[number]:0 //buttons=[number]:1 //relatedTarget=[object]:null //pageX=[number]:179.5625 //pageY=[number]:2214 //x=[number]:179.5625 //y=[number]:199 //offsetX=[number]:160.671875 //offsetY=[number]:170.296875 //movementX=[number]:0 //movementY=[number]:0 //fromElement=[object]:null //toElement=[object]:null //layerX=[number]:179 //layerY=[number]:2214 //getModifierState=[function]:function getModifierState() { [native code] } //initMouseEvent=[function]:function initMouseEvent() { [native code] } //view=[object]:[object Window] //detail=[number]:0 //sourceCapabilities=[object]:null //which=[number]:1 //initUIEvent=[function]:function initUIEvent() { [native code] } //type=[string]:pointerdown //target=[object]:[object HTMLSpanElement] //currentTarget=[object]:null //eventPhase=[number]:0 //bubbles=[boolean]:true //cancelable=[boolean]:true //defaultPrevented=[boolean]:false //composed=[boolean]:true //…IdLog.innerHTML=IdLog.innerHTML+"●"; //表示。 } IdTest.onpointerdown=JobPD; //イベント割り当て。 IdTest.onlostpointercapture=Job; //イベント割り当て。詳細
//isTrusted=[boolean]:true //pointerId=[number]:1 //width=[number]:1 //height=[number]:1 //pressure=[number]:0 //tiltX=[number]:0 //tiltY=[number]:0 //azimuthAngle=[number]:0 //altitudeAngle=[number]:1.5707963267948966 //tangentialPressure=[number]:0 //twist=[number]:0 //pointerType=[string]:mouse //isPrimary=[boolean]:true //getCoalescedEvents=[function]:function getCoalescedEvents() { [native code] } //getPredictedEvents=[function]:function getPredictedEvents() { [native code] } //screenX=[number]:386 //screenY=[number]:274 //clientX=[number]:179.5625 //clientY=[number]:199 //ctrlKey=[boolean]:false //shiftKey=[boolean]:false //altKey=[boolean]:false //metaKey=[boolean]:false //button=[number]:0 //buttons=[number]:0 //relatedTarget=[object]:null //pageX=[number]:179.5625 //pageY=[number]:2214 //x=[number]:179.5625 //y=[number]:199 //offsetX=[number]:160.671875 //offsetY=[number]:170.296875 //movementX=[number]:0 //movementY=[number]:0 //fromElement=[object]:null //toElement=[object]:null //layerX=[number]:179 //layerY=[number]:2214 //getModifierState=[function]:function getModifierState() { [native code] } //initMouseEvent=[function]:function initMouseEvent() { [native code] } //view=[object]:[object Window] //detail=[number]:0 //sourceCapabilities=[object]:null //which=[number]:1 //initUIEvent=[function]:function initUIEvent() { [native code] } //type=[string]:lostpointercapture //target=[object]:[object HTMLSpanElement] //currentTarget=[object]:null //eventPhase=[number]:0 //bubbles=[boolean]:true //cancelable=[boolean]:false //defaultPrevented=[boolean]:false //composed=[boolean]:true //…
→Element.setPointerCapture()、PointerEvent.pointerId。Element.innerHTML。