如何在IE上强制window.navigator.pointerEnabled
为假?
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');
}
答案 0 :(得分:2)
这就是我设法做到的方式:
Match 1
Full match `abc aaa
bbb abc ccc
abc ddd eee
fff abc`
Group 1. `abc`
Group 2. ` aaa
bbb abc ccc
abc ddd eee
fff abc`
Object.defineProperty(navigator.__proto__, 'pointerEnabled', { value: false });
console.log(window.navigator.pointerEnabled);
不起作用的原因是该属性是只读的。如果您进入控制台,则可以看到它:
navigator.pointerEnabled = false
请注意Object.getOwnPropertyDescriptor(navigator.__proto__, 'pointerEnabled')
成员是set
。