QQ邮箱的一个文本编辑器代码


edt_color_slt.js
复制代码 代码如下:

var _r = "";
var color_table=[
['000000','993300','333300','003300','003366','000080','333399','333333'],
['800000','FF6600','808000','008000','008080','0000FF','666699','808080'],
['FF0000','FF9900','99CC00','339966','33CCCC','3366FF','800080','999999'],
['FF00FF','FFCC00','FFFF00','00FF00','00FFFF','00CCFF','993366','C0C0C0'],
['FF99CC','FFCC99','FFFF99','CCFFCC','CCFFFF','99CCFF','CC99FF','FFFFFF']
];
function a1(obj)
{
obj.style.border='1px solid #000080';
obj.style.background='#FFEEC2';
}
function a2(obj)
{
obj.style.border='1px solid #F6F6F6';
obj.style.background='#F6F6F6';
}
function paintCell(color)
{
//_r += '<TD BGCOLOR="' + color + '" style="height:12px;width:12px;">';
_r += '<TD style="padding:2px;background:#f6f6f6;border:1px solid #f6f6f6" onmouseover="a1(this)" onmouseout="a2(this)">';
_r += "<IMG src='/htmledition/images/spacer.gif' HEIGHT=12 WIDTH=12 style='border:1px solid #ccc;background:#" + color +"'></TD>";
}
function paintRow(color_row) //一行
{
_r +='<TR>';
for (var i = 0,l=color_row.length; i < l; ++i)
{
paintCell(color_row[i]);
}
_r +='</TR>';
}
function paintTable(b) //表格
{
_r +='<TABLE CELLPADDING=0 CELLSPACING=0 style="border:5px solid #F6F6F6">';
for (var i = 0,l=b.length; i < l; ++i) {
paintRow(b[i]);
}
_r +='</TABLE>';
}
function paintCube() { //大边框
_r += '<TABLE CELLPADDING=0 CELLSPACING=0 style="border:1px solid #888;"><TR>';
_r +='<TD BGCOLOR="#FFFFFF">';
paintTable(color_table);
_r +=('</TD>');
_r +='</TR></TR></TABLE>';
return _r;
}

edt_main.js
复制代码 代码如下:

//html输出
function output(dat,templ,b)
{
for(var i=0;i<dat.length;i++)
{
var d = dat[i];
if(d.join)
{
for(var j=0;j<d.length;j++)
if (templ[j*2+1])
templ[j*2+1] = d[j];
if(b) alert(templ.join(""));
document.write(templ.join(""));
}
else document.write(d);
}
}
//B I U
var commFunc = " onmousedown=OnTBMouseDown(this) onmouseover=OnTBMouseOver(this) onmouseout=OnTBMouseOut(this) ";
var commAttr = ' style="position:absolute;clip:rect($rect$);margin:$margin$;" title="$title$" ';
var commHead = ' <img src="./images/editoricon.gif" '+ commAttr;
var commHeadMask = ' <img src="./images/editoricon_mask.gif" ' + commAttr;
var sComm = commHead + commFunc;



//模块结构: 1.基础函数 2.接口定义 3.事件函数 4.HTML编辑框 5.全局事件绑定 6.全局变量声明
//基础函数
function GetDoc(win){ return (win?win:window).document;}
function S(i,win) {return GetDoc(win).getElementById(i);}
function F(sID,win) //sunny for firefox
{
if( sID == "" || sID == null ) return null;
var frame = S(sID,win);
if( !frame) return null;
return frame.contentWindow?frame.contentWindow:(win?win:window).frames[sID];
}
function Disp(obj,flag) // 0 隐藏,1显示
{
if(obj){ obj.style.display = flag?"":"none";}
}
function getPosX(e)
{
var l=e.offsetLeft;
while(e=e.offsetParent){
l+=e.offsetLeft;
}
return l;
}
function getPosY(e)
{
var t=e.offsetTop;
while(e=e.offsetParent){
t+=e.offsetTop;
}
return t;
}
String.prototype.trim = function(){
return this.replace(/(^\s*)|(\s*$)/g, "");
};

function ExecCmd(type, para){
LoadPos();
var f = F("HtmlEditor");
var sAlert = "";
if(!gIsIE)
{
switch(type){
case "Cut":
sAlert = "你的浏览器本地下载
« 
» 

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3