主题: 好像初始化内容有点问题
作者: hulefei29, 发布日期: 2009-08-31 11:11:09, 浏览数: 7686
在程序演示中,有一个插入hmtl的demo,但是如果把insertHTML放在js代码里,不用onclick触发的话,会报KE.g[...].range为空或不是对象,是不是编辑器初始化顺序的问题,应该怎么解决呢?
作者: Roddy, 发布日期: 2009-08-31 16:49:47
执行insertHtml之前,需要执行KE.util.selection(id);
回复
作者: hulefei29, 发布日期: 2009-09-02 16:13:44
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title>KindEditor 3.1</title>

    <script type="text/javascript" charset="utf-8" src="./../kindeditor.js"></script>
    <script type="text/javascript">
      KE.show({
          id : 'content1',
          cssPath : './index.css'
      });
      function clearEditor(id) {
          KE.g[id].iframeDoc.open();
          KE.g[id].iframeDoc.write(KE.util.getFullHtml(id));
          KE.g[id].iframeDoc.close();
          KE.g[id].newTextarea.value = '';
      }
      function insertHtml(id, html) {
          KE.util.focus(id);
          KE.util.selection(id);
          KE.util.insertHtml(id, html);
      }
      
      //insertHtml('content1', '<strong>测试内容</strong>');
     
     
     KE.util.selection('content1');
     KE.util.insertHtml('content1', '<strong>初始化测试内容</strong>');
     
     
    </script>
  </head>
  <body>
    <div class="editor">
      <textarea id="content1" name="content1" style="width:700px;height:300px;visibility:hidden;">
       	11111111111111
       </textarea>
    </div>
    <input type="button" name="button" value="清空内容" />
    <input type="button" name="button" value="插入HTML内容" '<strong>测试内容</strong>');" />
  </body>
</html>



我已经调用selection('content1')了,问题是出在
var win = KE.g[id].iframeWin;
var doc = KE.g[id].iframeDoc; 
在调用selection的时候,KE.g[id].iframeWin和KE.g[id].iframeDoc为undefined,然后又在下面调用了win出错

但是selecttion在初始化和使用按钮触发都没有问题,这是为什么呢?
回复
作者: hulefei29, 发布日期: 2009-09-03 13:27:34
找到原因了,还是编辑器初始化顺序的问题,要另起一个script脚本段,就可以了

回复
发表新帖 发表回复