主题: 能否解析一下3.2版本中fontsize中用span的思路和方法啊
作者: liang, 发布日期: 2009-06-29 08:11:42, 浏览数: 6914
不错!能否解析一下3.2版本中fontsize中用span的思路和方法啊,呵呵
作者: goad, 发布日期: 2009-07-02 14:56:06

我也想知道,呵呵

:)

回复
作者: Roddy, 发布日期: 2009-07-02 17:44:30
加span要用浏览器的range API,非IE的range符合基本W3C标准,所以做起来相对容易一些。IE的range有比较大的区别,我现在做法是自己定义了一个range类(KE.range),这个类的接口和W3C标准range类似但不完全一样,只实现了我需要的方法。
有了统一的range处理方法接下来加span比较容易,遍历node,selection range的start和end中间的文本统统用span包起来,正好被range分割的文本要分割一下。span全部加上去以后重新选中(IE: range.select(), 非IE: selection.addRange())就可以了。

还有,IE下用execCommand的removeformat无法清除span标记,所以我不得不写一大段代码实现removeformat,这个相对比较复杂,基本思路和FCKeditor beta最新版一样,selection range的start和end部分先分割inline tag,然后删除range里的所有inline tag就可以了。

目前还有小bug,以后全部弄好以后我会共享这方面的心得。
回复
作者: goad, 发布日期: 2009-07-07 16:15:47

强烈支持roddy,呵呵,不过,我自己写的就不改span了,这个貌似很强大。

期待roddy的ke3.2,呵呵

回复
发表新帖 发表回复