校园学生学习娱乐资源第一门户 校园第一站 源于校园 服务于校园 分享资源和快乐 网站地图 高级搜索 RSS订阅 收藏本站 设为首页
首页 | 校园 | 教育 | 考试 | 电脑 | 英语 | 读书 | 就业 | 论文 | 体育 | 健康 | 图片 | 分类信息
Q Q | 下载 | 游戏 | 音乐 | 影视 | 专题 | 祝福 | 百科 | 问答 | 博客 | 会员 | 社区 | 校园论坛
·偶像剧免费在线收看
·DEDECMS免费模板规则下载
·
·全能空间、网站建设仅200
DIV+CSS | FrontPages | HTML | Javascript | 文章搜索:
  当前位置: 主页>电脑>网页设计>Dreamweaver> 文章正文

扩展Dreamweaver:自定义第三方标签的解析

http://www.xydyz.com 来源:校园第一站 2007-10-22 阅读: 评论


因为最近一直在做 Dreamweaver 插件的开发,中文的资料非常少,自己英文又差,查看英文资料的时候不由头昏脑胀。迫不得已把其中一些重要的内容翻译成中文之后,看的时候才觉得爽快不少。本节选自 Dreamweaver 8 附带的《Extending Dreamweaver 8》,翻译的时候参考了一下侠客岛翻译的《Dreamweaver 4 中文帮助》。不过老实不客气地说,我有点怀疑那个帮助的某些部分是用金山快译之类的软件翻译的,反正读起来比英文还难懂。

服务器端技术,比如ASP、Macromedia ColdFusion,JSP,以及 PHP 在 HTML 文件里面使用特殊的非 HTML 语法,服务器在这些代码的基础上创建和提供 HTML 格式的内容。当 Dreamweaver 检测到非 HTML 标签,Dreamweaver 会调用第三方标签的定义文件来比较它们,这些文件指定 Dreamweaver 如何读取和显示这些标签。

举个例子,在标准的 HTML 语言之外,ASP 文件还包含了供服务器解析的 ASP 代码。ASP 代码看起来和 HTML 标签类似,它由一对标签,开始的 <% 和关闭的 %>,来作标记。在 Dreamweaver 的 Configuration/ThirdPartyTags 文件夹里有一个名为 Tags.xml 的文件,这个文件就是用来描述包括 ASP 在内的各种第三方标签规范的,并定义了 Dreamweaver 如何来显示这些代码。使用这种方法,ASP 代码在 Tags.xml 中已经被规范了,所以 Dreamweaver 不会再试着在 <%...%>之间解析任何代码。不过在设计视图里面,它会显示一个图标以表示这是 ASP 代码。你可以定义自己的标签,并且能为每套标签创建一个新的标签库文件,来指定 Dreamweaver 如何读取和显示你的标签。

注意:这部分说明了如何定义 Dreamweaver 显示一个自定义标签的方法,但是没有描述如何编辑自定义标签的内容或是属性。如何创建属性检查器来检查和修改自定义标签的属性,请查看属性检查器以获得相关信息。

每个标签库文件都会定义一个或者多个自定义标签的名称、类型、内容模式、显示规范和图标。你可以创建任意数量的标签库文件,但是它们必须位于 Configuration/ThirdPartyTags 文件夹以便被 Dreamweaver 读取和处理。标签库文件使用 .xml 文件扩展名。

提示:如果你同时进行着好几个不同网站的工作(假定当你是个自由职业者的时候),你可以把所有的标签规范定义在一个文件里面,并存放在一个特殊的站点上,将来由其他人维护这个站点的时候,你就可以完整地把包含自定义图标和属性检查器在内的标签库移交给他。

你需要使用一个名为 tagspec 的 XML 标签来定义一个标签规范。举例来说,下面的代码表示一个名为 happy 的标签规范。

<tagspec tag_name="happy" tag_type="nonempty" render_contents="false" content_model="marker_model" icon="happy.gif" icon_width="18" icon_height="18"></tagspec>

你可以使用 tagspec 来定义两种标签:
·HTML 格式的普通标签
happy 标签范例是一个 HTML 格式的普通标签。它开始于 <happy> 标签,在开始标签与结束标签之间包含数据,最后结束于</happy> 标签。

·字符串界定的标签
字符串界定的标签用一个字符串开始,用另一个字符串结束,它们和 HTML 空标签(诸如 img 之类)有类似之处,因为它们既不包含内容也没有关闭标签。如果 happy 也是一个字符串界定的标签,那它的定义规范里面必须包括 start_string 与 end_string 两个属性。ASP 标签都是字符串界定的标签,它们从 <% 开始,到 %> 结束,也没有关闭标签。

下面的信息罗列了 tagspec 标签的各个属性和有效值。带有星号(“*”)的属性表示不适用于字符串界定的标签,可选属性则使用了大括号({})来标识;不难推断,其他没有使用大括号标识的都属于必要的属性。

<tagspec>

说明

关于第三方标签的预设信息

属性

tag_name,{tag_type},{render_contents},{content_model},{start_string},{end_string},{detect_in_attribute},{parse_attributes},icon,icon_width,icon_height,{equivalent_tag},{is_visual},{server_model}

tag_name 表示自定义的名称。对于字符串界定的标签,tag_name 仅用于检测一个特定的属性检查器是否适用于这个标签。如果属性检查器的第一行在符合规范的位置(其实就是在第一行的声明里面)包含了这个标签名并标上星号(“*”),那么这个检查器将被允许检查该类型的标签。举个例子,ASP 代码的标签名就是 ASP,允许检查 ASP 代码的检查器必须在第一行包含 *ASP*。关于属性检查器 API 的信息,请参看 属性检查器。

tag_type 确定这个标签是空的(像前面提到的 img 那样),还是允许在开始与关闭标签之间放置内容(像 code 标签那样)。这个属性对于普通(非字符串界定的)标签是必要的,但是对字符串界定的标签不生效,因为他们总是空的。有效值包括 "empty" 和 "nonempty"。

render_contents 确定在设计视图中,该标签显示内容,还是代之以特定的图标。该属性仅对非空标签是必要的,对于空标签则不生效(空标签本身没有内容可供显示)。该属性仅应用于插入到属性外部的标签,如果一个标签插入其他标签的属性值内,它的内容将不会显示(这一段有点难理解,我想到的是 RealMedia、Flash 之类的 Object,里面的那些 param 标签?)。有效值为 "true" 或者是 "false"。

content_model 描述这个标签能包含哪种内容,还有这个标签能插入到 HTML 文件的什么地方。有效值包括 "block_model","head_model","marker_model",以及"script_model":

·block_model 表示该标签可以包含 div、p之类的块状对象,并且该标签只可以出现在 body 区域,或者是插入到其他的 body-content 标签内,比如 div、layer 以及 td 等。

·head_model 表示该标签只能包含文字而且只能出现在 HEAD 范围内。

·marker_model 表示该标签能包含任何有效的 HTML 代码,并且可以放在 HTML 文件内的任何位置。Dreamweaver 内置的 HTML 检验程序将忽略定义为 marker_model 的标签。不过,检验程序不会忽略这些标签包含的内容;所以,尽管标签本身可以随处放置,但是它的内容却可能导致 HTML 的某些地方产生错误。例如,纯文本不能出现(除去合法的 head 元素)在文档的 head 区域,所以你不能把一个包含纯文本的 marker_model 标签放在 head 区域(如果你要这么做,那你必须把这个标签的内容模式由 marker_model 替换为 head_model)。使用 marker_model 的标签将会在一行内显示(位于 p 或者 div 这样的块状元素内——举个例子,在一个段落里面),如果想让这个标签内显示它自己的段落,前后都留出空行,那么建议不要使用这个模式。




【责任编辑:admin 】

共3页: 上一页 1 [2] [3] 下一页



评论
用户名: 新注册) 密码: 匿名评论
评论内容:不能超过250字,请自觉遵守互联网相关政策法规。
  相关文章
Dreamweaver MX教程:在居中页面使用层
Dreamweaver网页制作技巧:使用模板
经验分享:网页设计中实用的制作技巧
Dreamweaver超级技巧之文字特效
如何在Dreamweaver中使用库项目
  最新图片
Dreamweaver网页制作技巧:使用模板
Dreamweaver网页制作
如何在Dreamweaver中使用库项目
如何在Dreamweaver中
Photoshop结合Dreamweaver制作网页相册
Photoshop结合Dreamwe
用Dreamweaver MX 2004的Flash动画元素
用Dreamweaver MX 200
用Dreamweaver设计自动关闭的网页
用Dreamweaver设计自
用Dreamweaver进行数据库操作
用Dreamweaver进行数
Dreamweaver教程:层及其应用
Dreamweaver教程:层
Dreamweaver教程:Dreamweaver的插件
Dreamweaver教程:Dre
24小时TOP
   
·Dreamweaver网页制作技巧:使用模板
·Dreamweaver教程:Dreamweaver的插件
·如何用Dreamweaver批量做web网页
·Photoshop结合Dreamweaver制作网页相册
·在Dreamweaver中插入有颜色的直线
·Dreamweaver 入门:注册 Dreamweaver 8
·Dreamweaver 基础:DW的工作区布局
·Dreamweaver超级技巧之文字特效
热门图片
  更多>>>
Dreamweaver网页制作技巧:使用模板
Dreamweaver网页制
Dreamweaver教程:Dreamweaver的插件
Dreamweaver教程:D
Photoshop结合Dreamweaver制作网页相册
Photoshop结合Dream
Dreamweaver 基础:DW的工作区布局
Dreamweaver 基础:
焦点聚焦
  更多>>>
 
论坛精华
  更多>>>
·真钱斗地主轧金花龙虎板玖和百家乐http://c
·22岁女大学生要嫁48岁乞丐(图)
·一条短信毁了一种水果 “蛆橘”传言流变调
·蒙古风情十四怪 (一)
·《中国高新技术企业》--www.txrb.com--科信
·东莞大金空调官方介绍 13559702882卢生
·乐众国际最新博彩游戏!真实!新鲜!刺激!
·快国庆了大家怎么安排
最新图片
  更多>>>
Dreamweaver网页制作技巧:使用模板
Dreamweaver网页制
如何在Dreamweaver中使用库项目
如何在Dreamweaver
Photoshop结合Dreamweaver制作网页相册
Photoshop结合Dream
用Dreamweaver MX 2004的Flash动画元素
用Dreamweaver MX 2
推荐文章
  更多>>>
·Dreamweaver网页制作技巧:使用模板
·如何在Dreamweaver中使用库项目
·Photoshop结合Dreamweaver制作网页相册
·用Dreamweaver MX 2004的Flash动画元素
·用Dreamweaver设计自动关闭的网页
·用Dreamweaver进行数据库操作
·Dreamweaver教程:层及其应用
·Dreamweaver教程:Dreamweaver的插件
关于我们 - 版权声明 - 免责声明 - 欢迎投稿 - 广告服务 - 友情链接 - 网站建设 - 诚聘英才 - 联系我们 - -
Copyright @2007-2009 www.xydyz.com © All rights reserved.
校园第一站 版权所有 客服E-Mail:hyperblue@163.comn 点击这里给我发消息
Site design by hyperblue 鄂ICP备07009403号 Powered by DedeCms