主题: 3。5如何加入层功能?
作者: aaron, 发布日期: 2010-06-27 14:14:38, 浏览数: 5214

3。5如何加入层功能

这个我每天都要用到

之前的版本代码插入正常但没有显示样式

以下是之前的代码

要怎样修改才能在3.5上面正常使用

KE.plugin['layer'] = {
click : function(id) {
var cmd = 'layer';
var styles = [
'margin:5px;border:1px solid #FF9900;',
'margin:5px;border:2px solid #FF9900;',
'margin:5px;border:1px dashed #FF9900;',
'margin:5px;border:2px dashed #FF9900;',
'margin:5px;border:1px dotted #FF9900;',
'margin:5px;border:2px dotted #FF9900;'
];
KE.util.selection(id);
var menu = new KE.menu({
id : id,
cmd : cmd,
width : 150
});
for (var i = 0; i < styles.length; i++) {
var html = '<div style="height:15px;' + styles[i] + '"></div>';
menu.add(html, new Function('KE.plugin["' + cmd + '"].exec("' + id + '", "padding:5px;' + styles[i] + '")'));
}
menu.show();
},
exec : function(id, value) {
KE.util.select(id);
var html = '<div style="' + value + 'width:80%;background-color:#FFFFFF;">' + KE.lang['pleaseInput'] + '</div>';
KE.util.insertHtml(id, html);
KE.layout.hide(id);
KE.util.focus(id);
}
};
作者: wangjinkun, 发布日期: 2010-06-28 22:38:16

原来3.4版本中的代码拿过来用不行了,3.5中的menu.add只能加入纯文本的菜单选项,有html代码时不能正常显示了,我也试过,后来浏览3.5版本中其它的方式,你可以试试下面的代码:

KE.plugin['layer'] = {
    click : function(id) {
        var cmd = 'layer';
        var styles = [
            'margin:2px;border:1px solid #000000;',
            'margin:2px;border:2px solid #000000;',
            'margin:2px;border:1px dashed #000000;',
            'margin:2px;border:2px dashed #000000;',
            'margin:2px;border:1px dotted #000000;',
            'margin:2px;border:2px dotted #000000;'
        ];
        KE.util.selection(id);
  var table = KE.$$('table');
  table.width = 150;
  table.cellPadding = 0;
  table.cellSpacing = 2;
  table.border = 0;
  table.style.margin = 0;
  table.style.padding = 0;
  table.style.borderCollapse = 'separate';
  table.style.borderSpacing = '2px';
  for (var i = 0; i < styles.length; i++) {
   var row = table.insertRow(i);
   for (var j = 0; j < 1; j++) {
    var cell = row.insertCell(j);
    cell.style.padding = '1px';
    cell.style.margin = 0;
    cell.style.border = '1px solid #efefef';
    cell.style.fontSize = '12px';
    cell.style.cursor = 'pointer';
    cell.onmouseover = function() {this.style.borderColor = '#000000'; }
    cell.onmouseout = function() {this.style.borderColor = '#AAAAAA'; }
    cell.onclick = new Function('KE.plugin["' + cmd + '"].exec("' + id + '", "' + styles[i] + '")');
    cell.innerHTML = '<div class="ke-reset" style="height:15px;' + styles[i] + '"></div>';
   }
  }
  var menu = new KE.menu({
   id : id,
   cmd : cmd
  });
  menu.append(table);
  menu.show();
    },
    exec : function(id, value) {
        KE.util.select(id);
        var html = '<div style="' + value + '">' + KE.lang['pleaseInput'] + '</div>';
        KE.util.insertHtml(id, html);
        KE.layout.hide(id);
        KE.util.focus(id);
    }
};

回复
作者: aaron, 发布日期: 2010-06-29 00:09:23

谢谢!已解决!

感谢了

回复
发表新帖 发表回复