selectNode() 在 IE8 中不起作用
我需要在微型 mce 中选择一个节点,我正在尝试以下代码。它可以在非 IE 浏览器中工作,但在 IE 上会出现错误 - 错误:对象不支持此属性或方法
代码 -
rng = ed.selection.getRng();
rng.selectNode(tn);
第二行导致错误。还有其他 IE 兼容的方法吗?
I need to select a node in tiny mce, I'm trying following code. It works in non-IE browsers, but on IE it gives error as -
Error: Object doesn't support this property or method
Code -
rng = ed.selection.getRng();
rng.selectNode(tn);
The second line causes the error. Is there any other IE compatible method for this ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
其原因是您获得的范围对象不同。在 FF 中,您将获得一个对象,该对象为您提供多种功能,例如
selectNode()
。 IE 范围仅向您提供一个仅包含属性的 textrange 对象。解决这个问题的方法很简单:
The reason for this is the different range object you get. In FF you get an object which offers you several functions like
selectNode()
. The IE range only presents you a textrange object which contains only properties.The solution to this is easy:
我阅读了有关 TextRange 对象的内容,并且能够实现我的预期。我想将光标设置在跨度内。我可以使用 TextRange 对象属性和方法来完成此操作,如下所示 -
moveToElementText - 将当前 TextRange 对象的起点和终点与指定元素的文本内容对齐。我加了一个nbsp;到跨度并用上面的代码可以用我的插入符号替换它。
I read about TextRange object and was able to do what I intended. I wanted to set my cursor inside a span. I could do it using TextRange object properties and methods as follows -
moveToElementText - Aligns the start and end points of the current TextRange object to the text content of the specified element. I added an nbsp; to the span and with the above code could replace it, by my caret.