//这个地方的nextpage和Editor.js中的insert函数的case "coderun"对应
2.做个codetext.gif图片到ButtonImage\standard目录下
此图片就是这个按钮的图标
此图片就是这个按钮的图标
3.到后台去管理一下样式,选择一个样式,(如果系统样式不允许修改,要新建一个样式)
然后修改 工具栏->按钮设置
此时会看到新加的按钮已经出现在可用按钮栏里,点击加入已选按钮.别忘保存设置.
4.找到Include\Editor.js.在insert函数里添加如下代码
case "coderun": // 字体变小 var rndnum=RndNum(5); insertHTML(" <textarea cols=60 id='run_Code"+ rndnum +"' name='run_Code"+ rndnum +"'>" + HTMLEncode(sel.text)+ "</textarea><br><input onclick=runCode() type=button value=运行代码> <input type=button value=复制代码 onclick=copycode(run_Code)>[提示:你可先修改部分代码,再按运行]"); break;
还要在此JS文件里增加一个函数,用于生成随机数.
以便给加入的代码运行框不同的名字,防止加入多个代码运行框时,有脚本冲突.
function RndNum(n){ var rnd=""; for(var i=0;i<n;i++) rnd+=Math.floor(Math.random()*10); return rnd; }
打开你的编辑器窗口,就会看到增加了这个按钮了,高兴吧!
5.到此还没完呢,还要在文章的显示页面里加上执行代码.
function runCode(){ //定义一个运行代码的函数, if(1 == arguments.length) try{ event = arguments[0]; }catch(e){} var code=(event.target || event.srcElement).parentNode.childNodes[0].value;//即要运行的代码。 var newwin=window.open('','',''); //打开一个窗口并赋给变量newwin。 newwin.opener = null // 防止代码对原页面修改 newwin.document.write(code); //向这个打开的窗口中写入代码code,这样就实现了运行代码功能。 newwin.document.close(); } function copycode(obj) { var rng = document.body.createTextRange(); rng.moveToElementText(obj); rng.scrollIntoView(); rng.select(); rng.execCommand('Copy'); rng.collapse(false); }
把这两个函数,写入一个JS文件里,然后在文章显示页面里引用这个JS文件即可.
呵呵,结束了,其实挺简单的.在eWebEditor_v280_Free_Final版本下测试通过.