Objective C-UIWebview-将javascript文本范围转换为Objective C对象,反之亦然

Objective C-UIWebview-将javascript文本范围转换为Objective C对象,反之亦然,javascript,objective-c,uiwebview,range,Javascript,Objective C,Uiwebview,Range,我有一个UIWebview,其中显示html内容。当用户选择一段文本时,我希望使用objective c保存该文本的范围,然后在稍后的阶段调用保存的范围以在UIWebview中重新选择文本 我能得到的最接近的javascript是: var selection = window.getSelection(); var range = selection.getRangeAt(selection.rangeCount); 但我不知道如何将range对象返回到objective c以保存它并在以后

我有一个UIWebview,其中显示html内容。当用户选择一段文本时,我希望使用objective c保存该文本的范围,然后在稍后的阶段调用保存的范围以在UIWebview中重新选择文本

我能得到的最接近的javascript是:

var selection = window.getSelection();
var range = selection.getRangeAt(selection.rangeCount);
但我不知道如何将range对象返回到objective c以保存它并在以后重用它。有人能给我指出正确的方向吗

谢谢,
EZFrag

您可以将范围序列化为一个字符串,该字符串表示通过DOM到达起点和终点的路径。我的库有,但对于移动Safari来说,仅仅依靠一个相对较大的库来完成这项任务可能有些过头了。有关使用相同思想的更轻量级脚本,请参见Martin Honnen在此处的脚本:

查看
-stringByEvaluatingJavaScriptFromString:
好的,请解释如何将范围转换为字符串?请注意,该范围包含许多我需要保留的对象和变量。我大约30分钟前刚刚找到并成功实现了它。谢谢;)@EZFrag,你能把你的解决方案贴在这里吗?