Как получить сообщение когда текст был выделен?
Я использую WKWebView и javascript для отображения текста в своем приложении. И я хочу получить сообщение, когда я выделяю текст в моем web view. Как это сделать? Я пытаюсь что-то подобное использовать, но я получаю сообщение только при касании экрана. Но не тогда, когда текст был выделен:
webView.configuration.userContentController.add(self, name: "newSelectionDetected")
let scriptString = """
function getSelectionAndSendMessage()
{
var txt = document.getSelection().toString() ;
window.webkit.messageHandlers.newSelectionDetected.postMessage(txt);
}
document.onmouseup = getSelectionAndSendMessage;
document.onkeyup = getSelectionAndSendMessage;
document.oncontextmenu = getSelectionAndSendMessage;
"""
let script = WKUserScript(source: scriptString, injectionTime: .atDocumentEnd, forMainFrameOnly: true)
webView.configuration.userContentController.addUserScript(script)
func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) {
// Use message.body here
}