- 热门文章:
- · 选择最快的镜像站点
- · 一段有趣并且实用的程序--利用javascript和dhtml实现两个列表框中内容的移动。(代码见内,把它存为一个...
- · 动态菜单的另一种实现(一) category.js
- · 动态数组的另一种实现(二) 界面
- · 实际使用“DXML”:在站点上实现 DHTML 菜单和目录(co.)
- · 以前收集的一些资料---JS中处理日期的一些函数和方法
- · 以前搜集的一些资料---html中的特殊字符(2)
- · 以前搜集的一些资料---html中的特殊字符(1)
- · 在浏览器里实现类似VB Form的界面控制
- · CSS2参考之一(转贴)
- · CSS2参考之二(转贴)
- · CSS2参考之三(转贴)
自己动手,结合javascript和dhtml做一个ubb编辑器(附例子代码)
首先遇到的是界面问题,实际上这个很好解决,只是利用td的onmouseover、onmouseout和onmousedown来实现,具体实现方法件下面的代码。
其次就是实现文本效果的问题,这个可以利用textRange的execCommand方法来实现。
下面我给出一个简单的例子,你可以把它存为一个html文件,直接可以运行,这个例子的功能很简单,就是把编辑框中选定的文字变为粗体或斜体。其他功能你可以参照这个例子自己加上。
对了,先把这两个图片存下来。
file : ubb.html
<HTML>
<HEAD>
<TITLE>ubb演示</TITLE>
</HEAD>
<BODY>
<br><br>
<table width=300 cellspacing=2 cellpadding=2 border=0 bgcolor=lightgrey>
<tr>
<td id=tdBold onclick=doAction("Bold") onmousedown="DoDown(tdBold );" onmouseover = "On_Mouseover(tdBold) ;" onmouseout="On_Mouseout(tdBold);">
<img src=@#bold.gif@# width=16 height=16 >
</td>
<td id=tdItalic onclick=doAction("Italic") onmousedown="DoDown(tdItalic);" onmouseover = "On_Mouseover(tdItalic) ;" onmouseout="On_Mouseout(tdItalic);">
<img src=@#italic.gif@# width=16 height=16 >
</td>
<td width=268> </td>
</tr>
<tr>
<td colspan=3>
<iframe id=Editor name=Editor border=0 scroll=no width=300 height=200>
</iframe>
</td>
</tr>
</table>
</BODY>
</HTML>
<script language=javascript>
//initialize the iframe
Editor.document .designMode = "On" ;
Editor.document .open ;
Editor.document .write (" ") ;
Editor.document .close ;
Editor.focus ();
function On_Mouseover(thisTD)
{
thisTD.style .borderLeft = "1px solid buttonhighlight" ;
thisTD.style .borderRight = "1px solid buttonshadow";
thisTD.style .borderTop = "1px solid buttonhighlight";
thisTD.style .borderBottom = "1px solid buttonshadow";
}
function On_Mouseout(thisTD)
{
thisTD.style .borderLeft = "" ;
thisTD.style .borderRight = "";
thisTD.style .borderTop = "";
thisTD.style .borderBottom = "";
}
function DoDown(thisTD)
{
thisTD.style .borderLeft = "1px solid buttonshadow";
thisTD.style .borderRight = "1px solid buttonhighlight";
thisTD.style .borderTop = "1px solid buttonshadow";
thisTD.style .borderBottom = "1px solid buttonhighlight";
thisTD.style .paddingTop = "2px";
thisTD.style .paddingLeft = "2px";
thisTD.style .paddingBottom = "0px";
thisTD.style .paddingRight = "0px";
}
function doAction(str)
{
var m_objTextRange = Editor.document .selection.createRange();
m_objTextRange.execCommand(str) ;
}
</script>
下一篇:选择最快的镜像站点 >>
相关文章:
- · CSS2参考之四(转贴)
- · CSS2参考之五(转贴)
- · CSS2参考之六(转贴)
- · CSS2参考之七(转贴)
- · CSS2参考之八(转贴)
- · CSS2参考之九(转贴)
- · CSS2参考之十一(转贴)<完>
- · CSS2参考之十(转贴)
- · 李由的奉献(一)----Windows Scripting Host 对象参考
- · CSS2参考之零(转贴)
- · 李由的奉献(二)----Wscript 对象
- · 李由的奉献(三)----WshArguments 对象
- · 李由的奉献(四)----WshShell 对象
- · 李由的奉献(五)----WshNetwork 对象
- · 李由的奉献(六)----WshShortcut 对象
- · 李由的奉献(七)----WshUrlShortcut 对象
- · 李由的奉献(八)----WshCollection 对象
- · 李由的奉献(九)----WshEnvironment 对象
- · 李由的奉献(十)----WshSpecialFolders 对象
- · 我其实不是高手的。WSH简介。
- · vb获得一页的html代码
- · 下班前一贴,用wsh读取registry.
- · 相信我,我不知道我在说什么。
- · 字体大小的单位
- · myCSS 一并给大家
- · 你真的需要FRONTPAGE吗?
- · 有趣的用法
- · 不用组件上载文件代码具体例子
- · HEAD元素使用集锦
- · 利用ASP嵌套JS+SQL Server打造两级连动下拉框(二)
- · 利用ASP嵌套JS+SQL Server打造两级连动下拉框(一)
- · 如何设计好你的主页
- · 客户端特效集合
- · 网站设计中表单验证
- · js:关于document.execCommand()函数可用参数大解析
- · html中的特殊字符
- · IEWebBrowser组件的execWB方法
- · 从数据库中动态选取下拉列表的方法
