How to capture iOS Safari event on text selection

2019-02-13 06:56发布

Following scenario: When selecting text on iOS Safari (lets assume a "normal" html page) an blue overlay occurs, indicating that you have selected a specific passage. Furthermore, you are able to change that selection, in order to correct your initial selection area. I'm interested in capturing exactly that event, when selection area change is done. Is it possible (when yes, how?) to catch such an event within Javascript? Thx in advance.

2条回答
爱情/是我丢掉的垃圾
2楼-- · 2019-02-13 07:28

I've found that this event fires multiple times even on a single word selection (with a tap), and of course it fires when you drag the selection handles ...

I created a small workaround to get only the text selection end event.

you can see it here: End of text selection event?

or in a small post on my blog: http://www.dimshik.com/end-of-text-selection-event-on-ios-workaround/

查看更多
啃猪蹄的小仙女
3楼-- · 2019-02-13 07:51

Mobile Safari supports the selectionchange event, which fires on Document nodes:

document.addEventListener("selectionchange", function() {
    alert("Selection changed!");
}, false);
查看更多
登录 后发表回答