在智能手机上检测文本选择

时间:2019-07-04 13:27:03

标签: javascript android dom-events smartphone

在Android Chrome上,长按选择文本时,不会触发事件“ touchend”和“ touchstart”。 因此,以下解决方案不起作用:

How to detect a long touch pressure with javascript for android and iphone?

哪个事件被触发?

“ onselect”事件似乎仅在输入或文本区域中起作用。

2 个答案:

答案 0 :(得分:0)

这不是“移动事件”,而是被解雇的一个好的旧上下文菜单事件:

https://developer.mozilla.org/fr/docs/Web/API/Element/contextmenu_event

我终于在这里找到了答案:Weird behavior of long presses in Chrome and Firefox for Android

答案 1 :(得分:0)

“ selectionchange”事件适用于: Android(Chrome)和iOS(Safari)

“ contextmenu”事件适用于: Android(Chrome,Mozilla和Opera)

对于Mozilla和Opera,您可能需要使用setTimeout包装函数:

document.addEventListener('contextmenu', setTimeout(handleSelection, 1));