您的位置:首页 > Web前端 > HTML

一个简单的利用微软ajax技术开发的HTMLEditer

2011-02-15 16:07 627 查看
没啥好写的,都麻木了。就当留个记号吧代码

<script language="jscript">
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~按钮风格,颜色选择~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
function button_over(eButton)
{
eButton.style.backgroundColor ="#B5BDD6";
eButton.style.borderColor = "darkblue darkblue darkblue darkblue";
}
function button_out(eButton)
{
eButton.style.backgroundColor = "threedface";
eButton.style.borderColor = "threedface";
}
function button_down(eButton)
{
eButton.style.backgroundColor = "#8494B5";
eButton.style.borderColor = "darkblue darkblue darkblue darkblue";
}
function button_up(eButton)
{
eButton.style.backgroundColor = "#B5BDD6";
eButton.style.borderColor = "darkblue darkblue darkblue darkblue";
eButton = null;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
var isHTMLMode=false
var bShow = false
function cmdExec(cmd,opt)
{
if (isHTMLMode){alert("请先退出'HTML模式'");return;}
idContent.focus()
idContent.document.execCommand(cmd,bShow,opt);
bShow=false;
EditTextCopy();
}
function EditTextCopy()
{
document.body.all("tbEditTextName").value = idContent.innerHTML;
}
function setMode(bMode)
{
var sTmp;
isHTMLMode = bMode;
if (isHTMLMode){sTmp=idContent.innerHTML;idContent.innerText=sTmp;}
else {sTmp=idContent.innerText;idContent.innerHTML=sTmp;};
}
function createLink()
{
if (isHTMLMode){alert("请先退出'HTML模式'");return;}
cmdExec("CreateLink");
}
function insertImage()
{
if (isHTMLMode){alert("请先退出'HTML模式'");return;}
bShow=true;
cmdExec("InsertImage");
}
function insertRuler()
{
if (isHTMLMode){alert("请先退出'HTML模式'");return;}
cmdExec("InsertHorizontalRule","");
}
function foreColor()
{
//var arr = showModalDialog("HTMLEdit/selcolor.htm","","font-family:Verdana; font-size:10; dialogWidth:40em; dialogHeight:50em" );
var arr = showModalDialog("http://www.cnblogs.com/UserControl/HTMLEdit/bgcolor.aspx","","font-family:Verdana; font-size:10; dialogWidth:40em; dialogHeight:50em" );
if (arr != null) cmdExec("ForeColor",arr);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
function backColor()
{
var arr = showModalDialog("http://www.cnblogs.com/UserControl/HTMLEdit/bgcolor.aspx","","font-family:Verdana; font-size:10; dialogWidth:40em; dialogHeight:50em" );
if (arr != null) cmdExec("BackColor",arr);
}

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~没办法了。好像这个结构不太可能实现undo,redo功能了。有时间可以换成2个iframe翻来翻去的那种做法~~~~~~~~~~~~~~~
function unDo()
{
ftbBody_editor.focus();//只有iframe才支持这个功能,这里只是个层
ftbBody_editor.document.execCommand('undo','',null);
alert("undo");
}

function reDo()
{
ftbBody_editor.focus();//只有iframe才支持这个功能,这里只是个层
ftbBody_editor.document.execCommand('redo','',null);
alert("redo");
}

//计算字数
function FTB_WordCount() {//统计字数
if (isHTMLMode){alert("请先退出'HTML模式'");return;}
idContent.focus();
var d = new Date();
sel = idContent.document.selection.createRange();
sel.pasteHTML(d.toLocaleTimeString());
}

//插入时间
function insertTime() {
if (isHTMLMode){alert("请先退出'HTML模式'");return;}
idContent.focus();
var d = new Date();
sel = idContent.document.selection.createRange();
sel.pasteHTML(d.toLocaleTimeString());
EditTextCopy();
}

//插入日期
function insertDate() {
if (isHTMLMode){alert("请先退出'HTML模式'");return;}
idContent.focus();
var d = new Date();
sel = idContent.document.selection.createRange();
sel.pasteHTML(d.toLocaleDateString());
EditTextCopy();
}

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐