欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Editor百度编辑器 增加自定义工具栏功能按钮,选定内容插入html代码css样式

程序员文章站 2022-05-26 18:40:03
...

比如增加一个按钮.点击以后,选定文字直接加粗,字号18px,颜色绿色
如下效果
Editor百度编辑器 增加自定义工具栏功能按钮,选定内容插入html代码css样式

					<script type="text/javascript">
//假如只有一个编辑器,可以这样
//var editor = new UE.ui.Editor({initialFrameHeight:200});
//editor.render("editor");
//多个编辑器
					    var va="{$v.entitle}";//PHP动态得到编辑器id
						UE.getEditor(va);
						
	//定义按钮       
    UE.registerUI('button2', function(va, uiName) {
    va.registerCommand(uiName, {
        execCommand: function() {
           // alert('execCommand:' + uiName)
        }
    });
    //创建一个button
    var btn = new UE.ui.Button({
        //按钮的名字
        name: uiName,
        //提示
        title: "加粗 自定义字体颜色",
        //下面添加额外样式,指定icon图标,这里默认使用一个重复的icon
        cssRules: '',
        //点击时执行的命令
        onclick: function() {
            //可省略
            //editor.execCommand(uiName);
	

//利用原有功能,叠加实现	
// editor.execCommand('inserthtml', 'hello!');
 va.execCommand(uiName);
 va.execCommand('bold'); //加粗
va.execCommand('fontSize','18px'); 
 va.execCommand('forecolor', '#3cbfae'); 

//或直接插入html代码,实现更复杂功能
//  var range = UE.getEditor('editor').selection.getRange();
         //   range.select();
      // var txt = UE.getEditor('editor').selection.getText();
		//editor.execCommand('insertHtml', "<span style='font-weight:700;font-size:18px;color:#3cbfae'>"+txt+"</span>");;
        }
    });
    //当点到编辑内容上时,按钮要做的状态反射 这个无无效,不知原因
    va.addListener('selectionchange', function() {
        var state = va.queryCommandState(uiName);
        if (state == -1) {
            btn.setDisabled(true);
            btn.setChecked(false);
        } else {
            btn.setDisabled(false);
            btn.setChecked(state);
        }
    });
    //因为你是添加button,所以需要返回这个button
    return btn;
}, [1, [va]]);//1表示位置


					</script>