Webview委托的shouldChangeSelectedDOMRange:用文档片段而不是完整文档调用

时间:2015-03-02 17:34:08

标签: macos cocoa webkit

我的Web视图有几个元素,用户可以编辑这些元素来更新OS X主机应用程序中的模型对象。

对于其中一些元素,当调用像webView:shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:这样的委托方法时,范围参数位于#document-fragment容器内 - 根本没有任何属性信息。

因此,几乎不可能弄清楚正在编辑什么节点 - 因为所有id属性都被剥离了。

po proposedRange.commonAncestorContainer.path 
/#document-fragment/DIV/DIV/DIV/#text

对于其他输入元素,我获得整个DOM路径,所有属性信息都保持不变:

po proposedRange.commonAncestorContainer.path
/#document/HTML/BODY/DIV/DIV/DIV/TABLE/TBODY/TR/TD/DIV/DIV/DIV/DIV/TABLE/TBODY/TR/TD/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/DIV/H1/SPAN/#text

任何可能导致这种行为差异的想法?

0 个答案:

没有答案