這里VeVb武林網(wǎng)小編參考了幾篇文章特為大家整理下,用到的朋友多支持一下了。
進(jìn)行長(zhǎng)文章分頁(yè),編輯人員在控制分頁(yè)符的時(shí)候手工插入很麻煩,所以修改了FCK的插入分頁(yè)符的插入字符:
修改方法:
打開(kāi)/editor/js/
找到fckeditorcode_gecko.js和fckeditorcode_ie.js
因?yàn)閒ck有二個(gè)js文件。fckeditorcode_gecko.js是針對(duì)非ie的。一個(gè)是針對(duì)ie的。所以我們需要更改二個(gè)js的文件。
這樣方便我們以后插入分頁(yè)時(shí),就不需要那么一大串的了。
找到:
var FCKPageBreakCommand=function(){this.Name='PageBreak';};FCKPageBreakCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();var e=FCK.EditorDocument.createElement('Div')
以及其后字符,修改為你自己的分頁(yè)符即可
fck分頁(yè)符修改
FKC默認(rèn)添加的分頁(yè)符為:<div style="page-break-after: always"><span style="display: none"> </span></div>
對(duì)文章的分頁(yè),我是運(yùn)用String.split("分頁(yè)符")方法,將文章以分頁(yè)符為分割點(diǎn),返回一個(gè)String類(lèi)型的數(shù)組,但是雙引號(hào)不能夠相互嵌套,split()方法中的參數(shù)就沒(méi)辦法設(shè)置。
如何修改默認(rèn)的分頁(yè)符:
找到j(luò)s文件:在/fckeditor/editor/js/目錄下,需要修改的有兩個(gè)js文件:fckeditorcode_ie.js(針對(duì)IE瀏覽器的配置)、fckeditorcode_gecko.js(針對(duì)非IE瀏覽器的配置)。
在js文件中找到如下代碼,并做修改:
var FCKPageBreakCommand=function() {this.Name='PageBreak';}; FCKPageBreakCommand.prototype.Execute=function() {FCKUndo.SaveUndoStep(); var e=FCK.EditorDocument.createElement('DIV'); //這里是創(chuàng)建<div>標(biāo)簽,此處不用修改 e.style.pageBreakAfter='always'; //這里是為<div>添加樣式,把它刪掉; e.innerHTML='<span style="DISPLAY:none"> </span>'; //這里是在<div>中添加的內(nèi)容,修改一下; 我的是修改為e.innerHTML='[jb51page]'; 也就是僅有一個(gè)空格; 保存,重新添加文章,添加文章時(shí)看不出變化,保存看查看數(shù)據(jù),分頁(yè)符的位置變?yōu)? <div>[jb51page]</div>
為文章分頁(yè)就可以用split("<div>[jb51page]</div>")方法進(jìn)行拆分顯示了;
以下是參考了dedecms的方法:
大家在修改的時(shí)候一定要看清原來(lái)的fckeditor分頁(yè)的寫(xiě)法,千萬(wàn)不要直接覆蓋,容易出問(wèn)題。
dedecms的方法:
var FCKPageBreakCommand=function(){this.Name='PageBreak';};
FCKPageBreakCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();
var e=FCK.EditorDocument.createElement('P');e.innerHTML='[jb51page]';
VeVb武林網(wǎng)用的方法:
var FCKPageBreakCommand=function(){this.Name='PageBreak';};
FCKPageBreakCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();
FCK.EditorDocument.selection.createRange().text='[jb51page]';
注意:由于我們使用的版本,有FCKUndo.SaveUndoStep();如果不帶出現(xiàn)了編輯器無(wú)法顯示的情況。大家根據(jù)需要修改。
后面發(fā)現(xiàn)了dedecms增加的小功能,里面的函數(shù)不錯(cuò)可以參考下
var FCKLineBrCommand=function(){this.Name='LineBr';};FCKLineBrCommand.prototype.Execute=function(){FCK.EditorDocument.selection.createRange().pasteHTML("<br/>");};FCKLineBrCommand.prototype.GetState=function(){return 0;}var FCKQuoteCommand=function(){this.Name='Quote';};FCKQuoteCommand.prototype.Execute=function(){ var quoteString = "<table style='border-right: #cccccc 1px dotted; table-layout: fixed; border-top: #cccccc 1px dotted; border-left: #cccccc 1px dotted; border-bottom: #cccccc 1px dotted' cellspacing=0 cellpadding=6 width='95%' align=center border=0>/r/n"; quoteString += "<tr><td style='word-wrap: break-word' bgcolor='#fdfddf'>/r/n<font color='#FF0000'>以下為引用的內(nèi)容:</font><br>/r/n"; quoteString += "</td></tr></table>/r/n"; FCK.EditorDocument.selection.createRange().pasteHTML(quoteString);};FCKQuoteCommand.prototype.GetState=function(){return 0;} 


















