UE.commands['tabbg'] = { queryCommandState: function () { var rng = this.selection.getRange(); return domUtils.findParentByTagName(rng.startContainer, 'table', true) ? 0:-1; }, execCommand: function (cmd, color) { if(color == "default")color=""; var rng = this.selection.getRange(); var table = domUtils.findParentByTagName(rng.startContainer, 'table', true); if (table) { // console.log('tab = ', table); var sels = table.getElementsByClassName("selectTdClass"); if(sels.length == 0){ var prtTd = domUtils.findParentByTagName(rng.startContainer, 'td', true); sels=[prtTd]; } for(var i=0,n=sels.length;i<n;i++){ // console.log('e = ', sels[i]); sels[i].style.backgroundColor=color; } } this.selection.clearRange(); } }; editorui.tabbg = function(editor){ window.ed = editor; var ui = new editorui.ColorButton({ className:'edui-for-tabbg', color:'default', title:'单元格背景色', editor:editor, onpickcolor:function (t, color) { // console.log('onpickcolor->', t, color); editor.execCommand("tabbg", color); }, onpicknocolor:function () { // console.log('onpicknocolor-> nil'); editor.execCommand("tabbg", 'default'); this.setColor('transparent'); this.color = 'default'; }, onbuttonclick:function () { // console.log('onbuttonclick-> nil'); editor.execCommand("tabbg", this.color); } }); editorui.buttons["tabbg"] = ui; editor.addListener('selectionchange', function () { ui.setDisabled(editor.queryCommandState("tabbg") == -1); }); return ui; }
posted on 2018-07-26 17:23  图图图图  阅读(728)  评论(0)    收藏  举报