让fckeditor的link带有下载图标

fckeditor本身的link是不会带有图标的,就像有些博客那样,要下载的东西前面会有一个小图标,下载者一眼就能看出,挺人性化的。不过聪明的网友为fckeditor写了一个带有附件的插件,个人感觉有点多余。其实fckeditor的link功能修改一下就可以了。

找到fck_link\fck_link.js

找到:function Ok()并在其前面加上:

var oIcons = new Object() ;

oIcons.AvailableIconsArray = [
    'ai','avi','cs','dll','doc','exe','fla','htm','html','js','bmp','jpg','gif','png',
    'mdb','mp3','pdf','ppt','rdp','swf','swt','txt','vsd','xls','xml','zip' ] ;

oIcons.AvailableIcons = new Object() ;

for ( var i = 0 ; i < oIcons.AvailableIconsArray.length ; i++ )
    oIcons.AvailableIcons[ oIcons.AvailableIconsArray[i] ] = true ;

oIcons.GetIcon = function( fileName ){
    var sExtension = fileName.substr( fileName.lastIndexOf('.') + 1 ).toLowerCase() ;

    if ( this.AvailableIcons[ sExtension ] == true )
        return sExtension ;
   
        return '' ;
}


在    if ( !aHasSelection ) 下面的:sInnerHtml = asLinkPath[1];  // use matched path下面加入:

tempInnerHtml = sInnerHtml.substring(sInnerHtml.lastIndexOf('/') + 1);
                var sIcon = oIcons.GetIcon( tempInnerHtml ) ;
                if(sIcon.length != 0)
                tempInnerHtml = '<img  src="' + FCKConfig.BasePath + 'filemanager/browser/default/images/icons/32/' + sIcon + '.gif" width="32" height="32" border="0">' + tempInnerHtml;
       
                sInnerHtml = tempInnerHtml;

好了,这样fckeditor在当你选择文件的时候,会自动加上图标,如果你选择的是文字,只会加连接,不能加上图标的。



300*300
 文章首页关于迷茫时代关于我写意人生
版权所有:迷茫时代 All rights reserved   
执行时间:0.01031 秒