Javascript getSelection在iOS 12中工作不正常

Javascript getSelection在iOS 12中工作不正常,javascript,ios,Javascript,Ios,函数document.getSelection()和window.getSelection()在iOS 12中不起作用 这个问题在Safari、Google Chrome和WKWebView中重现 在iOS 11和MacOS(任何版本)中,这些功能都可以正常工作 你能提出建议吗 : 我真的不知道为什么document.getSelection()和window.getSelection()在iOS 12中不起作用,但下面的代码会在用户单击节点时返回节点内的偏移量 var contentjs=d

函数document.getSelection()和window.getSelection()在iOS 12中不起作用

这个问题在Safari、Google Chrome和WKWebView中重现

在iOS 11和MacOS(任何版本)中,这些功能都可以正常工作

你能提出建议吗

:


我真的不知道为什么
document.getSelection()
window.getSelection()
在iOS 12中不起作用,但下面的代码会在用户单击节点时返回节点内的偏移量

var contentjs=document.querySelector('#contentjs');
contentjs.onclick=函数(e){
var result=document.querySelector(“#result”);
result.innerHTML=GetAnchoroOffset(e);
};
函数getAnchorOffset(事件){
var范围;
if(event.rangeParent&&document.createRange){//Firefox
range=document.createRange();
range.setStart(event.rangeParent,event.rangeOffset);
range.setEnd(event.rangeParent,event.rangeOffset);
返回范围.startOffset;
}else if(document.caretRangeFromPoint){//Webkit
范围=document.caretRangeFromPoint(event.clientX,event.clientY);
返回范围.startOffset;
}else if(document.caretPositionFromPoint){//Firefox用于不带rangeParent的事件
范围=document.caretPositionFromPoint(event.clientX,event.clientY);
返回范围.offset;
}
返回0;
}
anchorOffset

“知识本身是一种美德,是一种美德,是一种美德,是一种美德,是一种美德,是一种美德,是一种美德,是一种美德,是一种美德,是一种美德。”有时,我会毫不犹豫地认为这是一种罪过,因为我认为这是iOS 12中的一个漏洞。它在最新的公测版中仍然失败,所以我提交了反馈并处理了它们。否则,kakamg0似乎有一个很好的解决方法。祝你好运!多谢各位!通过函数range=document.caretRangeFromPoint(event.clientX,event.clientY)解决了我的问题;
document.querySelector("#contentjs").onclick = function () {
    console.log(document.getSelection());
    document.querySelector("#result").innerHTML = document.getSelection().anchorOffset;
}