[转载] 关于ckEditor 的一些小知识
2014-06-13 11:41
183 查看
http://jiangzhenghua.iteye.com/blog/793282
今天写了一段代码:目的是向CKEditor中插入数据如下:
Js代码
function insertSrc(srcArray){
var i=0
for (i=0;i<=srcArray.length;i++)
{
var oEditor = CKEDITOR.instances.articleContent;
var editorData_old = oEditor.getData() ;
var editorData_new = editorData_old.substring(0,editorData_old.indexOf('</head>'))
+
srcArray[i]
+ editorData_old.substring(editorData_old.indexOf('</head>')) ;
oEditor.setData(editorData_new) ;
}
}
经过调试发现该函数执行有问题,循环中后几个循环不能执行。原因就是CKEDITOR中的setData()方法是ajax异步的。
最终改写代码为:
Js代码
function insertSrc(srcArray){
var oEditor = CKEDITOR.instances.articleContent;
var editorData_old = oEditor.getData() ;
var old_begin = editorData_old.substring(0,editorData_old.indexOf('</head>')) ;
var old_end = editorData_old.substring(editorData_old.indexOf('</head>')) ;
var insertData = '' ;
for(var i=0;i<srcArray.length;i++)
{
insertData = insertData + srcArray[i] ;
}
var editorData_new =old_begin + insertData + old_end ;
oEditor.setData(editorData_new) ;
}
注:我们应该知道CKEditor中getData()方法是正常的方法,而setData()方法是异步方法。
今天写了一段代码:目的是向CKEditor中插入数据如下:
Js代码
function insertSrc(srcArray){
var i=0
for (i=0;i<=srcArray.length;i++)
{
var oEditor = CKEDITOR.instances.articleContent;
var editorData_old = oEditor.getData() ;
var editorData_new = editorData_old.substring(0,editorData_old.indexOf('</head>'))
+
srcArray[i]
+ editorData_old.substring(editorData_old.indexOf('</head>')) ;
oEditor.setData(editorData_new) ;
}
}
经过调试发现该函数执行有问题,循环中后几个循环不能执行。原因就是CKEDITOR中的setData()方法是ajax异步的。
最终改写代码为:
Js代码
function insertSrc(srcArray){
var oEditor = CKEDITOR.instances.articleContent;
var editorData_old = oEditor.getData() ;
var old_begin = editorData_old.substring(0,editorData_old.indexOf('</head>')) ;
var old_end = editorData_old.substring(editorData_old.indexOf('</head>')) ;
var insertData = '' ;
for(var i=0;i<srcArray.length;i++)
{
insertData = insertData + srcArray[i] ;
}
var editorData_new =old_begin + insertData + old_end ;
oEditor.setData(editorData_new) ;
}
注:我们应该知道CKEditor中getData()方法是正常的方法,而setData()方法是异步方法。
相关文章推荐
- [转载]关于Clusters的一些相关知识和名词解释
- 关于硬件设计知识的一些转载
- 【转载来的】关于句柄的一些知识
- 转载总结一些关于Google chart api的知识
- 关于数据库事务的一些基础知识(转载)
- [转载]关于数据库的一些基本知识
- 关于dos启动的一些知识
- 关于 XML 的一些基础知识
- 关于龙芯2号的一些说明(转载自LinuxFans.org)
- GeoGraphics文档中关于坐标系统的一些知识
- 关于哪种杀毒软件最好的一些个人见解[转载]
- 关于dos启动的一些知识
- 转载一些关于博客的文章
- 关于MIME的一些知识
- 关于垃圾回收的一些知识
- 一些关于流量和带宽的知识
- 关于一些论坛转载文章的问题!
- 关于继承和覆盖(Override)的一些基础知识
- 关于MIME的一些知识
- 转载:关于linux图形界面的基本知识