主题: 向kindeditor里appendhtml 的时候如何能不让kindeditor成为激活状态
作者: tiger, 发布日期: 2013-04-14 14:11:35, 浏览数: 4062

您好,我使用kindeditor作为我的聊天工具的信息输入控件,和历史信息展示控件的时候碰到了一个问题(我把kindeditor嵌入到了webbrower里面) 问题就是:

   当我的聊天窗口不是激活窗口,也就是不是正在操作的窗体,比如被其他的某个窗体遮住了,这个时候聊天窗体是可以接受其他人发过了的聊天信息的,我会吧这些聊天信息appendhtml(插入到最后)到信息展示区,可是当调用appendhtml后 自动把这个聊天窗体给激活了貌似是里面的kindeditor获取到了焦点,我希望的是能不让他appendhtml后自定激活,不知道该怎么弄,我排查了下问题原因,应该就是把信息插入到kindeditor里的问题,能帮忙解释下appendhtml做了什么工作么? 急急急

作者: Roddy, 发布日期: 2013-04-14 16:47:12

这样写试试:

editor.html(editor.html() + 'HTML代码');
回复
作者: tiger, 发布日期: 2013-04-14 21:28:11
回复Roddy:非常感谢啊 你给的解决方法可以用,谢谢了,这个问题困扰我很久了 谢谢啦
回复
作者: tiger, 发布日期: 2013-04-14 21:31:09
回复Roddy: 不过还有个问题,使用了您提供的这个方法后,如果出现滚动条,滚动条就不会自动滚动到最后面了,请问有方法可以控制滚动到最后面么?
回复
作者: tiger, 发布日期: 2013-04-14 21:46:13

回复Roddy:

appendHtml: function(val) {
            this.html(this.html() + val);
            if (this.isCreated) {
                var cmd = this.cmd;
                cmd.range.selectNodeContents(cmd.doc.body).collapse(false);
                cmd.select();
            }
            return this;
        }

好像是这一段代码会吧窗体激活(红色部分),这个红色部分恰好是调整滚动条位置的把?

如果我只用 this.html(this.html() + val); 这个代码的话,滚动条的位置不会自动滚动到最下面,不知道怎么解决滚动条位置问题? 谢谢帮助下

回复
作者: Roddy, 发布日期: 2013-04-14 22:21:00
回复tiger:那用editor.appendHtml()后再用editor.blur(),不知道能不能满足需求。如果还是有问题,可以自己把滚动条滚动到编辑器位置,如果用jQuery可以这样写:
$(window).scrollTop($('.ke-container').position().top);
回复
发表新帖 发表回复