2017-01-25 8 views
1

window.navigator.pointerEnabledを強制的にIEでfalseにすることはできますか?window.navigator.pointerEnabledをfalseに強制する

window.navigator.pointerEnabled = false; 

動作しません。

私はそのコードに触れることができないが、どんな場合でも、他のケースになりたい:

if (window.navigator.pointerEnabled) { 
     tapEventListener('pointerdown'); 
     tapEventListener('pointerup'); 
     tapEventListener('pointcancel'); 
     tapTouchMoveListener = 'pointermove'; 
} else if (window.navigator.msPointerEnabled) { 
     tapEventListener('MSPointerDown'); 
     tapEventListener('MSPointerUp'); 
     tapEventListener('MSPointerCancel'); 
     tapTouchMoveListener = 'MSPointerMove'; 
} else { 
     tapEventListener('touchstart'); 
     tapEventListener('touchend'); 
     tapEventListener('touchcancel'); 
} 

答えて

2

これは私がそれを行うために管理方法です:

Object.defineProperty(navigator.__proto__, 'pointerEnabled', { value: false }); 
 

 
console.log(window.navigator.pointerEnabled);

navigator.pointerEnabled = falseが機能しない理由は、プロパティが読み取り専用であるためです。

Object.getOwnPropertyDescriptor(navigator.__proto__, 'pointerEnabled') 

そして setメンバーが undefinedであることに注意してください:あなたは、コンソールで入力した場合、それを見ることができます。

関連する問題