2016-05-15 5 views
3

nicedit.jsのデフォルトのカラーピッカーを変更したい jsファイルを調べているうちに、次のコードがカラーピッカーを生成していることがわかります。データはcolorList変数を使用して設定されます。誰でもPhotoshopまたはより多くのrelavantのようなカラーピッカーを手に入れてください。nicedit.jsのcolorpickerをPhotoshopのように変更する

var nicEditorColorButton = nicEditorAdvancedButton.extend({ 
    addPane : function() { 
     var colorList = {0 : '00',1 : '33',2 : '66',3 :'99',4 : 'CC',5 : 'FF'}; 
     var colorItems = new bkElement('DIV').setStyle({width: '270px'}); 

     for(var r in colorList) { 
     for(var b in colorList) { 
      for(var g in colorList) { 
      var colorCode = '#'+colorList[r]+colorList[g]+colorList[b]; 

      var colorSquare = new bkElement('DIV').setStyle({'cursor' : 'pointer', 'height' : '15px', 'float' : 'left'}).appendTo(colorItems); 
      var colorBorder = new bkElement('DIV').setStyle({border: '2px solid '+colorCode}).appendTo(colorSquare); 
      var colorInner = new bkElement('DIV').setStyle({backgroundColor : colorCode, overflow : 'hidden', width : '11px', height : '11px'}).addEvent('click',this.colorSelect.closure(this,colorCode)).addEvent('mouseover',this.on.closure(this,colorBorder)).addEvent('mouseout',this.off.closure(this,colorBorder,colorCode)).appendTo(colorBorder); 

      if(!window.opera) { 
       colorSquare.onmousedown = colorInner.onmousedown = bkLib.cancelEvent; 
      } 

      } 
     } 
     } 
     this.pane.append(colorItems.noSelect()); 
    } 
}); 

答えて

0

私はPhotoshopの進値を含む配列にcolorListを変更し、このようにそれを使用します。私のコードが正しく編集されていますが、基本的なアイデアを得るされている場合

var nicEditorColorButton = nicEditorAdvancedButton.extend({ 
    addPane : function() { 
    var colorList = {0 : '000000',1 : 'FFFFFF'}; /* here goes color list */ 
    var colorItems = new bkElement('DIV').setStyle({width: '270px'}); 

    for(var g in colorList) { 
    var colorCode = '#'+colorList[g]; 
    var colorSquare = new bkElement('DIV').setStyle({'cursor' : 'pointer', 'height' : '15px', 'float' : 'left'}).appendTo(colorItems); 
    var colorBorder = new bkElement('DIV').setStyle({border: '2px solid '+colorCode}).appendTo(colorSquare); 
    var colorInner = new bkElement('DIV').setStyle({backgroundColor : colorCode, overflow : 'hidden', width : '11px', height : '11px'}).addEvent('click',this.colorSelect.closure(this,colorCode)).addEvent('mouseover',this.on.closure(this,colorBorder)).addEvent('mouseout',this.off.closure(this,colorBorder,colorCode)).appendTo(colorBorder); 

    if(!window.opera) { 
     colorSquare.onmousedown = colorInner.onmousedown = bkLib.cancelEvent; 
    } 

    } 
    this.pane.append(colorItems.noSelect()); 
}}); 

わかりません。 2つのループを削除し、colorList内で直接ループする

関連する問題