开发一个自己的HTML在线编辑器
原文地址:http://aspalliance.com/1092_Rich_Text_Editor_Part_I
[原文源码下载]
开发一个自己的HTML在线编辑器(一)
摘要
在本文中,Haissam Abdul Malak将给大家详细介绍如何使用javascript开发一个HTML在线编辑器,它可以应用于web应用程序中,特别是论坛,社区和博客。这个编辑器支持基于XHTML创建文本的功能。
原文发布日期:2007.01.04
作者:Haissam Abdul Malak
翻译:webabcd
文章内容
介绍
在用户控件中添加HTML代码
javascript文件
编辑器属性
添加一个样式表
结论
介绍
我的一个朋友在一个正在开发的项目(一个博客网站)中遇到了一些问题,是关于文本编辑器的。在研究了所有免费的编辑器之后,他发现没有一个是他所需要的,所以我接下了这个任务,帮他开发一个HTML在线编辑器的用户控件,我认为和大家分享这个控件是个好主意,达到了知识共享的目的。
这个编辑器包括如下一些特性
1、工具栏包括了全部的功能(下面已列出)
·排列(居左,居中,居右)
·字体格式(加粗,下划线,斜体,字号,字体,文字颜色)
·计算单词数,删除格式,插入水平线,撤销,重复,插入字符
2、HTML模式结合到了一个框架中,文本模式结合到了另一个框架中。注意这两个框架只能有一个被显示。
3、有两个图标,分别是“HTML视图”和“设计模式”,一个文本框用来显示单词数,最后有两个隐藏文本框用来存储用户输入的数据。
要看懂这个实例,你需要有javascript和HTML的相关知识。
在用户控件中添加HTML代码
这部分我们将创建一个用户控件(hamHtmlEditor.ascx),并且在其中写一些必需的HTML代码。注意该用户控件不包含<head>, <body> 或 <form> 标记。
我们将创建3个表格来显示所有的图标,另外还要有3个下拉列表框。其中2个表格放在控件的顶端,1个表格放在控件的底部。每个图标都有3个事件,分别是onmouseover,onmouseup,onclick,处理这些事件的是javascript文件中的javascript代码。把javascript代码和HTML代码分开,可以让你更容易理解和调试。然后我们将创建3个层,第一个层包含一个已经有的HTML页(TextArea.htm)。我使用一个HTML页是因为如果用户输入了一个rul,它可以自动的把它转换为HTML代码并呈现在你的文本中。第二个层包括了1个textarea,在用户使用期间,它用来显示HTML代码(默认隐藏
相关文档:
HTML元素速查
下面列出了 HTML 定义的元素集,按字母顺序排列。
表1-1 元素列表
元 素 说 明
a 表明超链接的起始或目的位置
acronym 表明缩写词
address 特定信息,如地址、签名、作者、此文档的原创
applet 在页面上放置可执行内容
area 定义客户端图像映射中一个超级链接区域的形状、坐标
b 指定文本应以粗体 ......
I needed a tab pane to put some content in my web pages. There are many solutions around
and I must say that they are quite good, but I had some extra requirements that I needed.
I did search around but I did not find what I wanted, so I ended up producing something and now I am sharing
it with y ......
getElementById getElementsByName getElementsByTagName 大概介绍
getElementById , getElementsByName ,getElementsByTagName
byid只是得到单个对象 后两个是得到集合,
getElementById 的用法
<a id="link1" name="link1" href=http://homepage.yesky.com> ......
匹配中文字符的正则表达式: [u4e00-u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了
匹配双字节字符(包括汉字在内):[^x00-xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
匹配空白行的正则表达式:ns* ......