相关疑难解决方法(0)

使用类来对齐ckeditor

我正在使用ckeditor,这真的很棒.我遇到的唯一问题是我在对齐对象时尝试使用类而不是样式.更具体地说,我想使用类alignleft来对齐左图像而不是使用style ="float:left".为此,我修改了插件ckeditor/plugins/image/dialogs/image.js

在id:'cmbAlign'中,我更改了setup和commid方法,以便根据情况添加类"alignleft"或"alignright"但奇怪的是当我尝试更改类时它不起作用(使用removeClass或addClass, setAttribute('class')也不起作用).代码是:

id:'cmbAlign',
    type:'select',
    widths:['35%','65%'],
    style:'width:90px',
    label:b.lang.common.align,
    'default':'',
    items:[[b.lang.common.notSet,'none'],[b.lang.common.alignLeft,'left'],[b.lang.common.alignRight,'right']],
    onChange:function(){
        l(this.getDialog());
        o.call(this,'advanced:txtdlgGenStyle');
    },
    setup:function(C,D){
        if(C==d){
            var E=(D.getAttribute('class')+'').match(/align([a-z]+)?/);
            if(E&&E[1])E = E[1];else E='';
            this.setValue(E);
        }
    },
    commit:function(C,D,E){        
        var F = (this.getValue()+'');
        if(C==d||C==f){
            var G=(D.getAttribute('class')+'').match(/align([a-z]+)?/);
            if(G&&G[1]){
                if(F!=G[1]){
                    D.removeClass('align'+G[1]);
                    if(F!=='')D.setAttribute('rel',F); D.addClass('align'+F);
                }
            } else {
                if(F!=='')D.setAttribute('rel',F); D.addClass('align'+F);
            }

        }
}
Run Code Online (Sandbox Code Playgroud)

请注意,我已添加D.setAttribute('rel',F),它的工作完美.

有没有人有任何想法或解决方案?

javascript wysiwyg class ckeditor

2
推荐指数
1
解决办法
3213
查看次数

标签 统计

ckeditor ×1

class ×1

javascript ×1

wysiwyg ×1