我有一个包含多个段落的长
HTML文档.当我尝试在iOS或iOSWebView中的移动Safari中选择文本时,会发生以下情况:
>首先,我在选择中获得了字符级的精度.
>然后,当我选择更多,精度下降到两行文本,最终到整个段落.没有办法完全符合我想要的文字选择.
当我将CSS contentEditable属性设置为true时,我保留字符级精度,但是键盘也显示出来,当然我也不想要.
有没有办法保留字符级选择精度,无论我选择的文字多长?
解决方法
iOS 8的WKWebView可能能够解决这个问题. WKWebViewConfiguration有一个名为selectionGranularity的属性.评论是:
The level of granularity with which the user can interactively select
content in the web view. Possible values are described in
WKSelectionGranularity. The default value is
WKSelectionGranularityDynamic.
两个可能的值之一是WKSelectionGranularityCharacter.评论说:
Selection endpoints can be placed at any character boundary.
我还没有尝试过,但听起来很有希望!
更新7/6/15:看起来不是那么容易:Text Selection in WKWebView: WKSelectionGranularityCharacter
更新7/10/15:当您仔细研究iOS Kindle应用程序时,您可以看到他们已经重新实现了JavaScript中的“本地”文本选择,因为它们无法使本机文本选择的行为方式与之相符.我很确定他们在决定重新实施之前必须先尝试一切.