欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > fckeditor 代碼語法高亮

fckeditor 代碼語法高亮

熱門標簽:靈聲智能電話機器人招聘 長春防封卡電銷卡套餐 智能電銷機器人真的好嗎 天津電銷卡外呼系統線路 四平電話機器人哪家好 興化400電話辦理多少錢 企業電話機器人辦理 株洲外呼營銷系統有哪些 長春銷售外呼系統業務
先是IE:
1、遺留的問題:隱藏的源碼和格式化后的代碼有會有問題。
經上次研究的結果,兩處的代碼有可能不對,主要是HTML的特別代碼,像代碼里有標簽div>,JavaScript代碼里有alt等。這里的解決方法很簡單:只要替換一下就可以了,不過要注意,在進行格式化之前就進行替換。因為隱藏的代碼也是要替換的,最后取的時候也要替換回去,但是要反順序。代碼如下:
復制代碼 代碼如下:

.replace(//g, "")
.replace(//g, "lt;")
.replace(/>/g,'gt;');

2、在FCKeditor里很多控件都有右鍵菜單可以修改其屬性,代碼高亮我也想增加一個!到FCKeditor官方網站找了一遍成功的增加了,代碼如下(代碼放在fckplugin.js):
復制代碼 代碼如下:

// 添加右鍵菜單
FCK.ContextMenu.RegisterListener( {
AddItems : function( menu, tag, tagName )
{
if (!tag)
return;

var oDiv = tag;

// 循環的作用看一下代碼就知道了,是為了選擇高亮代碼的最頂層元素
while (oDiv.parentNode){
if (oDiv.tagName == usingTag oDiv.className == usingFlag)
break;
oDiv = oDiv.parentNode;
}

// under what circumstances do we display this option
if ( oDiv.tagName == usingTag oDiv.className == usingFlag )// (tag._FCKHighLighter || tag.parentElement._FCKHighLighter) )
{
FCKSelection.SelectNode( oDiv ) ;
// when the option is displayed, show a separator the command
menu.AddSeparator() ;
// the command needs the registered command name, the title for the context menu, and the icon path
menu.AddItem( 'HighLighter', FCKLang['DlgSyntaxHighLighterProperty'], oHighLighterItem.IconPath ) ;
}
}}
);

3、試用了一下效果,發現雙擊修改時只能雙擊代碼行數左邊的灰色才能彈出修改。我覺得不大方便,如果雙擊代碼處也可以彈出修改就方便多了!嘿嘿,答案是肯定的,之前的代碼已經注冊了DIV標簽的雙擊事件,所以再注冊一下格式化后的代碼用到的SPAN和LI標簽就可以了,代碼如下(代碼放在fckplugin.js):
復制代碼 代碼如下:

// 添加雙擊事件
FCK.RegisterDoubleClickHandler( FCKHighLighter.OnDoubleClick, usingTag ) ; // 雙擊灰色欄
FCK.RegisterDoubleClickHandler( FCKHighLighter.OnDoubleClick, 'SPAN' ) ; // 雙擊代碼
FCK.RegisterDoubleClickHandler( FCKHighLighter.OnDoubleClick, 'LI' ) ; // 雙擊代碼區空白
// 添加雙擊事件
FCK.RegisterDoubleClickHandler( FCKHighLighter.OnDoubleClick, usingTag ) ; // 雙擊灰色欄
FCK.RegisterDoubleClickHandler( FCKHighLighter.OnDoubleClick, 'SPAN' ) ; // 雙擊代碼
FCK.RegisterDoubleClickHandler( FCKHighLighter.OnDoubleClick, 'LI' ) ; // 雙擊代碼區空白

4、再試一下,發現雙擊代碼行數這里可以進行修改。但是雙擊代碼就不行,拿不到隱藏的源碼。原因是因為在代碼里雙擊的不是頂層元素,那簡單,修改一下雙擊的代碼,取得頂層元素就OK了(代碼放在fckplugin.js):
復制代碼 代碼如下:

/ /雙擊事件處理代碼
FCKHighLighter.OnDoubleClick = function( div ){
var oDiv = div;

// 循環的作用看一下代碼就知道了,是為了選擇高亮代碼的最頂層元素
while (oDiv.parentNode){
if (oDiv.tagName == usingTag oDiv.className == usingFlag)
break;
oDiv = oDiv.parentNode;
}

if(oDiv.tagName == usingTag oDiv.className == usingFlag) {
FCKSelection.SelectNode( oDiv ) ;
FCKCommands.GetCommand( 'HighLighter' ).Execute() ;
}
}

5、把編輯轉到源代碼再轉回來的時候發現高亮的代碼已經不可以編輯了。研究之下發現是用于標識的屬性沒有了,因為這個標識的屬性是非標準的HTML屬性。這個也好辦,反正頂層的class屬性沒用,就直接拿來用就可以了。這個簡單,我就不給代碼了。
IE里的修改算是完成了,而且比較完美。
再來FF:
  本人用系統,用軟件都用得比較雜,有時候會用用FF,所以修改的東西一定要支持FF。再說,FCKeditor本身是兼容IE和FF的,增加的插件只支持IE有點說不過去。
1、首先試用了一下效果:發現已經可以插入,不過不可以修改。雙擊事件也有效,但也是不能修改。這個原因是因為FF跟IE不同,IE里可以把DIV標簽直接選擇,FF里不可以。所以要加一個單擊的事件,讓代碼幫助FF選擇頂層元素,原始代碼是從FCKeditor的Placeholder插件里COPY過來的(代碼放在fckplugin.js):
復制代碼 代碼如下:

// 單擊事件處理代碼
FCKHighLighter._ClickListener = function( e )
{
var oDiv = e.target;

// 循環的作用看一下代碼就知道了,是為了選擇高亮代碼的最頂層元素
while (oDiv.parentNode){
if (oDiv.tagName == usingTag oDiv.className == usingFlag)
break;
oDiv = oDiv.parentNode;
}

if ( oDiv.tagName == usingTag oDiv.className == usingFlag )
FCKSelection.SelectNode( oDiv ) ;
}

FCKHighLighter._SetupClickListener = function (){
if (FCKBrowserInfo.IsGecko)
FCK.EditorDocument.addEventListener( 'click', FCKHighLighter._ClickListener, true ) ;
}

// 添加單擊事件
FCK.Events.AttachEvent( 'OnAfterSetHTML', FCKHighLighter._SetupClickListener ) ;

// 添加右鍵菜單
FCK.ContextMenu.RegisterListener( {
AddItems : function( menu, tag, tagName )
{
if (!tag)
return;

var oDiv = tag;

// 循環的作用看一下代碼就知道了,是為了選擇高亮代碼的最頂層元素
while (oDiv.parentNode){
if (oDiv.tagName == usingTag oDiv.className == usingFlag)
break;
oDiv = oDiv.parentNode;
}

// under what circumstances do we display this option
if ( oDiv.tagName == usingTag oDiv.className == usingFlag )// (tag._FCKHighLighter || tag.parentElement._FCKHighLighter) )
{
FCKSelection.SelectNode( oDiv ) ;
// when the option is displayed, show a separator the command
menu.AddSeparator() ;
// the command needs the registered command name, the title for the context menu, and the icon path
menu.AddItem( 'HighLighter', FCKLang['DlgSyntaxHighLighterProperty'], oHighLighterItem.IconPath ) ;
}
}}
);

注明:這個需要修改FCKeditor的核心代碼,因為我發現在2.5.1版本在FF下不可以修改選擇的元素,但是最新的2.6測試版就可以。所以需要修改_source\internals\fckselection_gecko.js文件里的GetSelectedElement函數,并且使用官方工具fckpackager.exe重新打包JavaScript代碼,這個我有空再寫一下。
  到這里已經差不多了,其中還有一些小問題沒有說,例如:高亮的代碼里可以直接修改(為標簽增加一個contentEditable='false'就完了),JS代碼兼容要使用parentNode不要使用parentElement等。
  本來想在添加代碼的窗口也增加一個實時語法高亮的編輯器,不過上網找了一下用得比較多的CodePress和EditArea都存在一些BUG,特別是在IE7下,所以還是暫時不添加了。日后再修改。
  增加這個插件修改的容易比較多,如果你遇到什么問題可以留言,我會盡力為你解答。
  下一步再為FCKeditor增加一個在線上傳圖片的插件,這樣在別處轉載文章時就方便多了,點一下就可以自動上傳所有圖片,哈哈哈。。。
您可能感興趣的文章:
  • JavaScript版代碼高亮
  • ASP語法高亮類代碼
  • 用js查找法實現當前欄目的高亮顯示的代碼
  • js兼容IE6,IE7菜單高亮顯示效果代碼
  • javascript網頁關鍵字高亮代碼
  • Javascript實現的CSS代碼高亮顯示
  • tinyMCE插件開發之插入html,php,sql,js代碼 并代碼高亮顯示
  • 兩種簡單實現菜單高亮顯示的JS類代碼
  • javascript 關鍵字高亮顯示實現代碼
  • 高亮顯示web頁表格行的javascript代碼
  • 高效的表格行背景隔行變色及選定高亮的JS代碼
  • jQuery語法高亮插件支持各種程序源代碼語法著色加亮
  • 分享15個美化代碼的代碼語法高亮工具
  • 用JS將搜索的關鍵字高亮顯示實現代碼
  • 如何實現正則表達式的JavaScript的代碼高亮
  • 2014最熱門的JavaScript代碼高亮插件推薦
  • 2016年最熱門的15 款代碼語法高亮工具,美化你的代碼

標簽:黑龍江 新疆 運城 貴港 石嘴山 漯河 巴彥淖爾 青海

巨人網絡通訊聲明:本文標題《fckeditor 代碼語法高亮》,本文關鍵詞  fckeditor,代碼,語法,高亮,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《fckeditor 代碼語法高亮》相關的同類信息!
  • 本頁收集關于fckeditor 代碼語法高亮的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    精品三级av在线| 日本不卡1234视频| 成人网在线播放| 5566中文字幕| 久久精品免视看| 激情综合色播激情啊| 麻豆av免费观看| 日韩欧美在线观看一区二区三区| 亚洲一卡二卡三卡四卡无卡久久| 91免费国产在线| 在线亚洲精品福利网址导航| 日韩一区有码在线| 波多野结衣亚洲| 91国产精品成人| 一区二区三区中文字幕精品精品| 国产偷国产偷亚洲高清人白洁| 麻豆精品精品国产自在97香蕉| 少妇饥渴放荡91麻豆| 日韩视频免费观看高清在线视频| 日日夜夜一区二区| www.久久av| 久久九九国产精品| 国产经典欧美精品| 免费国产羞羞网站美图| 中文字幕在线观看不卡| 97精品久久久久中文字幕 | youjizz.com国产| 91精品视频网| 久99久精品视频免费观看| 三区四区在线观看| 国产精品狼人久久影院观看方式| 成人免费视频国产在线观看| 色婷婷国产精品| 亚洲成人中文在线| 中文字幕一区二区久久人妻网站 | 97se亚洲国产综合自在线观| 日本丰满少妇一区二区三区| 亚洲一区在线观看免费观看电影高清| 成人啪啪18免费游戏链接| 欧美一区二区三级| 国产资源在线一区| 日本中文字幕一区| 国产视频三区四区| 欧美一卡二卡在线| 激情综合网av| 一本久久综合亚洲鲁鲁五月天| 一区二区三区高清不卡| 国产精品久久久久久亚洲色| 欧美tickle裸体挠脚心vk| 国产福利一区二区三区在线视频| 一道本成人在线| 无码av免费一区二区三区试看| 在线视频第一页| 1区2区3区欧美| 小毛片在线观看| 欧美激情一区二区三区全黄| 99国产精品久| 日韩午夜在线影院| 国产91丝袜在线18| 欧美另类一区二区三区| 亚洲电影在线免费观看| x88av在线| 一片黄亚洲嫩模| 国产综合精品在线| 亚洲精品国产a久久久久久| 人妻精品久久久久中文字幕| 国产精品乱子久久久久| 中国极品少妇videossexhd| 亚洲国产高清在线观看视频| 又色又爽又黄18网站| 久久一区二区三区国产精品| 中文字幕第10页| 久久久久久久久久久电影| 91精产国品一二三| 国产视频一区二区在线观看| 性高潮久久久久久| 国产日韩欧美一区二区三区乱码| 佐佐木明希电影| 国产欧美一区二区精品性| 男男一级淫片免费播放| 国产精品久久久久久户外露出 | 国产欧美精品一区二区色综合| 久久久久无码精品| 国产亚洲精品bt天堂精选| www.四虎精品| 国产精品久久国产精麻豆99网站| 欧美 日本 国产| 一区二区高清在线| 中文乱码字幕高清一区二区| 日韩精品电影一区亚洲| 色哟哟国产精品免费观看| 国内精品伊人久久久久av影院| 欧美男生操女生| av不卡一区二区三区| 久久久久久久精| 亚洲天堂成人av| 亚洲愉拍自拍另类高清精品| 在线观看亚洲大片短视频| 偷窥少妇高潮呻吟av久久免费| 色综合久久久久久久久久久| 久久精品久久精品| 欧美一区二区视频在线观看2020| 99国产精品99久久久久久| 国产日韩三级在线| 亚洲女优在线观看| 日本视频中文字幕一区二区三区| 欧美三区在线观看| 99视频热这里只有精品免费| 日本一区二区三级电影在线观看 | 久久机这里只有精品| 欧美人妇做爰xxxⅹ性高电影| 国产白丝网站精品污在线入口| 精品日韩av一区二区| 中国极品少妇videossexhd| 亚洲一二三专区| 91福利精品视频| eeuss影院一区二区三区| 国产精品美女久久久久久久久久久 | 欧美男女性生活在线直播观看| 91在线视频观看| 中文字幕五月欧美| 欧美做爰啪啪xxxⅹ性| 国产乱人伦偷精品视频不卡| 2020国产精品久久精品美国| 在线免费观看日韩av| 日韩国产欧美三级| 欧美一激情一区二区三区| 精品1卡二卡三卡四卡老狼| 亚洲午夜久久久久久久久久久| 欧美亚日韩国产aⅴ精品中极品| 99久久精品国产精品久久| 自拍视频在线观看一区二区| 国产又黄又爽又无遮挡| aaa国产一区| 亚洲欧美另类在线| 在线观看成人小视频| 黄页网站在线看| 午夜久久久久久久久久一区二区| 欧美精品色综合| 国产亚洲色婷婷久久99精品91| 日韩电影在线免费看| 日韩欧美二区三区| 国产精品国产三级国产专业不 | 丰满白嫩尤物一区二区| 成人欧美一区二区三区视频网页 | 亚洲欧洲中文日韩久久av乱码| 四虎影视一区二区| 国产**成人网毛片九色 | 亚洲区自拍偷拍| 狠狠色丁香婷婷综合久久片| 久久久国际精品| 国产日韩欧美在线观看视频| 成人18视频在线播放| 一区二区三区在线免费观看| 欧美日韩国产另类一区| 在线免费观看a级片| 久久国产精品第一页| 国产欧美日韩亚州综合 | 日本性高潮视频| 国产成人在线免费| 亚洲免费在线观看视频| 欧美军同video69gay| b站大片免费直播| 国产91丝袜在线18| 亚洲一区二区在线免费观看视频| 91麻豆精品国产91久久久久久 | 国产精品资源网站| 亚洲青青青在线视频| 欧美精品在线一区二区三区| 野外性满足hd| 国产不卡免费视频| 亚洲一级二级三级在线免费观看| 日韩美女视频一区二区在线观看| 永久免费观看片现看| 91在线视频观看| 美女网站在线免费欧美精品| 国产欧美精品国产国产专区| 欧美在线观看一区| 欧美色图亚洲激情| 成人黄页毛片网站| 日韩中文字幕亚洲一区二区va在线| 久久久亚洲综合| 欧美最猛黑人xxxxx猛交| 99久久久久久久久久| 成人激情视频网站| 视频一区二区三区入口| 中文字幕欧美区| 91精品一区二区三区久久久久久| 日本成人免费在线观看| 精品国产aⅴ一区二区三区东京热| 精品一区二区三区免费毛片爱| 亚洲欧美色一区| 日韩精品在线一区| 色八戒一区二区三区| 亚洲做受高潮无遮挡| av亚洲产国偷v产偷v自拍| 麻豆传媒一区二区三区| 亚洲免费在线视频| 国产日韩精品视频一区| 欧美高清dvd|