分享
 
 
 

所见即所得编辑器 aynHTML 大全——(一)如何部署、嵌入、装载动态内容

王朝html/css/js·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

所见即所得编辑器 aynHTML 系列文章(一)如何部署、嵌入、装载动态内容

aynHTML 简介aynHTML 是一款基于HyperText Component 技术的所见即所得的在线编辑器,支持表格,图像,样式表,等等,目前只能运行在 5.5 (或更高版本)的 Internet Explorer 浏览器中。

目前 aynHTML 的最高版本是v0.20b(该版本尚存在一些bug),我们使用的版本是v0.18b

下面是aynHTML 官方网站的一个在线demo

http://www.aine.be/aynhtml/demo.html

这个在线demo 的反应速度可能会有点慢(至少曾经的一个版本是这样的),这是因为aynHTML有一个选项默认是打开的,只要关闭这个选项编辑器的处理速度就会有非常明显的提升。在这里先向大家简单介绍一下,见下面一段代码:

<AI:aiButton id="btnOutdent" contentEditable="false" cmd="Outdent" alt="减少缩进量" src="img/ico_outdent.gif" autoOff="1" check="1" />

上面一段代码位于aynHTML的核心文件aynHTML/aiEditor.htc 中,是用来描述编辑器的一个按钮(减少缩进量)的。默认情况下check 的值为1,意思是自动check 编辑器中焦点所在区域的状态,如字体大小、是否为粗体、斜体、对齐方式等等,这会大大降低编辑时的速度。

注:

1).aynHTML 比较适合对web 页面进行简单的在线编辑,并不适合用于复杂的美工处理。

2).aynHTML 编辑器不能被嵌入Frameset 中,如果被嵌入Frameset 的话,键盘上的快捷键(如Ctrl-v,粘贴功能)将全部失效;

如何把aynHTML 编辑器嵌入到页面中

如何部署aynHTMl为了把 aynHTML editor 嵌入到 web 页面中,首先我们需要把aynHTML 的整个文件夹复制到 Web 站点的某个目录下(如程序文件的同级目录);然后在需要嵌入编辑器的页面中中加入 <AI:aiEditor> </AI:aiEditor> 两个标记,并在<AI:aiEditor> 标记中告诉编辑器该文件夹的相对位置,如下例所示

<html xmlns:AI>

<head>

<?import namespace="AI" implementation="aiEditor.htc" />

</head>

<body>

<AI:aiEditor id="aiEditor" path="aynHTML/" load_method="inline">

<p align="center"><b>Welcome to aynHTML Editor !</b></p>

</AI:aiEditor>

<!-- <AI:aiEditor> 与 </AI:aiEditor> 两个标记中间的内容将被格式化后显示在编辑器中 -->

</body>

</html>

下面一节我们将详细介绍如何定制aynHTML 编辑器。

注:

1).为了使aynHTML 编辑器正常运行,我们必须为其( <AI:aiEditor> </AI:aiEditor> )声明 AI 的 namespace,如上面代码中的

<?import namespace="AI" implementation="aiEditor.htc" />

[注:

dreamweaver 无法正确解释该 namespace 申明,当用dreamweaver 打开包含该声明的页面时会导致后面的一个标记被解释错误,如下面一段代码:

<!-- aynhtml editor -->

<?import namespace="AI" implementation="aynHTML/aiEditor.htc" />

<link href="aynHTML/external.css" rel="stylesheet" type="text/css">

<!-- aynhtml editor -->

将会被解释为:

<!-- aynhtml editor -->

<?import namespace="AI" implementation="aynHTML/aiEditor.htc" />

link href="aynHTML/external.css" rel="stylesheet" type="text/css">

<!-- aynhtml editor -->

其中的 <link/> 标记被吞掉了一个'<'

]

如何定制 aynHTML标记 <AI:aiEditor> 中的属性是用来定义 editor 的属性和操作的,如:

<AI:aiEditor id="aiEditor"

color="buttonface"

content =""

font="宋体 ,楷体_GB2312 ,黑体 ,仿宋 ,Arial ,Verdana , Tahoma, Times New Roman,Georgia"

font_size="8,9,10,11,12,13,14,16,20,24,48"

height="400"

hide_btn="open,save,image"

load_method="inline"

load_url=""

link_get="aynHTML/sample/text/links.xml"

open_method="default"

palette="web, system"

path="aynHTML/"

style_import="1"

stylesheet="aynHTML/internal.css"

width="600">

....

</AI:aiEditor>

其中:

color : 编辑器的界面颜色

content :用来获得和设置编辑器的内容

font :字体列表

font_size :字体大小列表

height :编辑器的高度

load_method :编辑器装载内容的方式(inline 是缺省的选项,意思是装载<AI:aiEditor> 与 </AI:aiEditor> 两个标记中间的内容)

load_url :如果指定 load_method 为 html的话,则表示住在某个html页面,load_url 就是这个页面的链接地址

link_get :aynHTML 可以以配置文件维护一个文件列表,用户可以选择其中一个文件进行编辑,link_get 是用来定义配置文件的路径的

open_method :与工具栏中打开按钮相关联的方法

palette :调色板中的色彩样式

path :aynHTML 编辑器核心文件的路径,该路径是相对于嵌入页面的相对路径

style_import:指示编辑器是否搜索所嵌入页面中的<style> 和 <link> 标记,缺省值为0

stylesheet :应用于编辑器的样式表

width :编辑器的宽度

如何在 editor 所嵌入的页面中读取 editor 中的 html 内容1).如果 html tag 是直接嵌入在 <AI:aiEditor id="aiEditor"> </AI:aiEditor> tag 内, 则可以通过 aiEditor.innerHTML 或 aiEditor.innerText 来得到所要的内容。

2).如果 html 是通过 copy paste 形式填充到 editor 窗口中的,则无法用 aiEditor.innerHTML 或 aiEditor.innerText 读取 editor中的内容,目前的解决方法为:在 aiEditor.htc 中添加一个读取 editor 窗口中内容的方法 getContent(),如下所示:

<public:component tagName="aiEditor">

<public:defaults viewLinkContent />

...

<public:method name="getContent" internalname="c_get_content" />

</public:component>

<script language="javascript">

...

/* the custom method invoked by the extra aiEdirot */

function c_get_content() {

return mode == 'html' ? aiEdit.innerHTML : aiEdit.innerText;

}

...

</script>

这样我们就可以在 editor 的外面读取 editor 中的内容了, 如:

<input type="button" value="getContent" onclick="javascript:alert(aiEditor.getContent());">

如何让编辑器显示动态内容要在编辑器中编辑从数据库中取出的动态内容,只需要把<AI:aiEditor> 的属性 load_method 设置为 inline,然后把动态取得的内容插入<AI:aiEditor> 和 </AI:aiEditor> 两个标记中间就可以了。

简单实例:

<html xmlns:AI>

<head>

<?import namespace="AI" implementation="aiEditor.htc" />

</head>

<body>

<%

Set conn = Server.CreateObject("ADODB.Connection")

conn.Open Application("newsconn")

sql = "SELECT newscontent FROM news_detail WHERE newsid='"&request("newsid")&"'"

Set rs = Server.CreateObject("ADODB.Recordset")

rs.Open sql,conn,1,2

%>

<AI:aiEditor id="aiEditor"

color="buttonface"

content =""

font="宋体 ,楷体_GB2312 ,黑体 ,仿宋 ,Arial ,Verdana , Tahoma, Times New Roman,Georgia"

font_size="8,9,10,11,12,13,14,16,20,24,48"

height="400"

hide_btn="open,save,image"

load_method="inline"

load_url=""

link_get="aynHTML/sample/text/links.xml"

open_method="default"

palette="web, system"

path="aynHTML/"

style_import="1"

stylesheet="aynHTML/internal.css"

width="600">

<%=rs("newscontent")%>

</AI:aiEditor>

<%

rs.Close

conn.Close

Set rs = nothing

Set conn = nothing

%>

</body>

</html>

在线资源和参考文档http://www.aine.be/aynhtml/http://www.aine.be/aynhtml/doc/aiEditor.html

http://www.aine.be/aynhtml/doc/aiTree.html

http://aynhtml.sourceforge.net/http://sourceforge.net/project/aynhtml/[/url]

作者简介吕克让 工学学士 2002年毕业于北京工业大学计算机学院

他最喜欢的花是文竹;最想做的是成为像 Richard Stallman 一样优秀的 Hacker。最近他正在学习如何使用 OpenCMS 管理网站内容。你可以通过 [url=mailto:lvkrnewerAThotmail.com]lvkrnewer@hotmail.com 和他取得联系。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有