📄 fckplugin.js
字号:
// Register the related command.var FCKWiki = function(name) { this.Name = name; }//去左空格; function ltrim(s){ return s.replace( /^\s*/, ""); } //去右空格; function rtrim(s){ return s.replace( /\s*$/, ""); } //去左右空格; function trim(s){ return rtrim(ltrim(s)); }FCKSelection.GetSelectedHTML = function() { if( FCKBrowserInfo.IsIE) { var oRange = FCK.EditorDocument.selection.createRange() ; //if an object like a table is deleted, the call to GetType before getting again a range returns Control switch ( this.GetType() ) { case 'Control' : return oRange.item(0).outerHTML; case 'None' : return '' ; default : return oRange.htmlText ; } } if ( FCKBrowserInfo.IsGecko ) { var oSelection = FCK.EditorWindow.getSelection(); //Gecko doesn't provide a function to get the innerHTML of a selection, //so we must clone the selection to a temporary element and check that innerHTML var e = FCK.EditorDocument.createElement( 'DIV' ); for ( var i = 0 ; i < oSelection.rangeCount ; i++ ) { e.appendChild( oSelection.getRangeAt(i).cloneContents() ); } return e.innerHTML; }} FCKWiki.prototype.Execute = function() { // 解除链接 if(FCKSelection.HasAncestorNode('A')){ FCK.ExecuteNamedCommand( 'Unlink' ) ; return; } // 得到当前选区内容 var html = FCKSelection.GetSelectedHTML(); if ( !html ) { alert (FCKLang.MakeWikiSelection); return; } // 去除HTML标签 html = html.replace(/(<([^>]+)>)/ig,""); // 去除开头与结尾的空格并将多个空格合并 html = html.replace(/( )+/ig," "); html = html.replace(/\s+/g," "); html = trim(html); // 去除非法字符 html = html.replace(/&[a-z]{1,5};/ig,""); html = html.replace(/[^\s\w\-\_\u00ff-\uffff]/ig,""); // 输出Wiki链接 FCK.InsertHtml( '<a rel="wiki" class="wiki" href="#">' + html + '</a>' ) ;}// 管理按钮状态 FCKWiki.prototype.GetState = function() { return FCK_TRISTATE_OFF;}// 注册命令 FCKCommands.RegisterCommand( 'wiki', new FCKWiki('wiki') );// 添加工具条和菜单项 var oWiki = new FCKToolbarButton( 'wiki', FCKLang.WikiTxt ) ;oWiki.IconPath = FCKConfig.PluginsPath + 'wiki/wiki.gif' ;FCKToolbarItems.RegisterItem( 'wiki', oWiki ) ;FCK.ContextMenu.RegisterListener( { AddItems : function( menu, tag, tagName ) { menu.AddSeparator() ; menu.AddItem( 'wiki', FCKLang.WikiTxt, oWiki.IconPath ) ; }});
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -