2.1.Dreamweaver的DOM结构分析 DOM是Document Object Model的简称,就是描述html文档的tag结构树,Dreamweaver的DOM是DOM level 1的子集,Dreamweaver为了实现充分定制和扩展功能,动用了400多个Javascript程序,并且提供了完整的Javascript API(应用程序接口),现在Dreamweaver 4.0基本上能通过javascript实现对菜单、浮动面板、代码监视器、站点窗口以及文档窗口的完全定制,,所以我们必须对Dreamweaver的DOM结构有一定的了解,这样才能设计完美的插件。
下面是Dreamweaver DOM的结构精选列表
对象 |
属性 |
方法 |
事件 |
document |
forms (数组) images(数组) layers(数组) 子对象名 nodeType parentNode childNodes documentElement body URL parentWindow
|
getElementsByTagName() //取得特定Tag hasChildNodes() //是否有子节点 |
onLoad |
所有的Tag |
nodeType parentNode childNodes tagName 属性名 innerHTML outerHTML
|
getAttribute() //取得属性 setAttribute() //设置属性 removeAttribute() //删除属性 getElementsByTagName() //取得特定Tag hasChildNodes() //是否有子节点 |
|
form |
elements(数组) mmcolorbutton 子对象名 |
同上 |
|
2.2.Javascript在插件中的工作机理 Dreamweaver在处理插件时,编译并且执行<script>里的代码,同时也编译执行外部的js文件,外部文件是通过<script src="..."></script>引入的,值得注意的是:如果javascript代码里存在</script>就中断返回,不在执行下去,所以通常用'<' + '/SCRIPT>'代替</script>,来保证后面的代码被编译执行;
插件类型不同原理有别:
Objects类:返回字符串插入文档,同时根据需要插入代码,也可以调用command
Command类:执行定义好的操作
Behavior类:给特定的tag添加事件,同时根据需要插入代码
如果你希望用户在使用插件时输入参数,必须设计一个带form的html文件,然后用javascript代码来处理输入的参数。
注意:插件面板上的链接不起作用
2.3.插件的专用控制器
3.1 颜色选取按钮mmcolorbutton
颜色值通过onChange事件传递给特定的输入框
图例:
样例:
<input type="text" name="Mycolor" size="8" maxlength="8">
<input type="mmcolorbutton" name="my1" onChange="this.form.Mycolor.value=this.form.my1.value">
3.2 文件浏览框
文件浏览框一般用于选择站内的目标文件,通过onClick事件传递文件的位置,文件路径可以选择是相对于Site还是Document
样例:
<INPUT TYPE="text" NAME="URL" STYLE="width:180px">
<INPUT TYPE="button" VALUE="Browse..." onClick="browseFile(document.theForm.URL)">
3.3 目录树
MM:TREECONTROL 指明本form元素是目录树
MM:TREECOLUMN 定义目录树的列
MM:TREENODE 制定目录树的节点.
图例:
样例:
<MM:TREECONTROL name="CtrlName" size=6 style="width:280px;height:100px">
<MM:TREECOLUMN name="mycolumn" value="列名">
<MM:TREENODE value="菜单1" selected></MM:TREENODE>
<MM:TREENODE value="菜单2|I菜单3" expanded>
<MM:TREENODE value="I菜单4|菜单5"></MM:TREENODE>
</MM:TREENODE>
</MM:TREECONTROL>
<Script type=text/javascript>
var arrBaiduCproConfig=new Array();
arrBaiduCproConfig['uid'] =304412;
arrBaiduCproConfig['n'] ='alixixi_cpr';
arrBaiduCproConfig['tm'] ='22';
arrBaiduCproConfig['cm'] ='72';
arrBaiduCproConfig['um'] ='22';
arrBaiduCproConfig['w'] ='728';
arrBaiduCproConfig['h'] ='90';
arrBaiduCproConfig['wn'] ='4';
arrBaiduCproConfig['hn'] ='1';
arrBaiduCproConfig['ta'] ='right';
arrBaiduCproConfig['tl'] ='bottom';
arrBaiduCproConfig['bu'] ='0';
arrBaiduCproConfig['bd'] ='#trans';
arrBaiduCproConfig['bg'] ='#trans';
arrBaiduCproConfig['tt'] ='#0000ff';
arrBaiduCproConfig['ct'] ='#444444';
arrBaiduCproConfig['url'] ='#008000';
arrBaiduCproConfig['bdl'] ='#000000';
arrBaiduCproConfig['rad'] =1;
</Script>
<Script src="http://cpro.baidu.com/cpro/ui/ui.js" type=text/javascript charset=gbk>
</Script>
<Script type=text/javascript>
<--
document.write(baiduCproIFrame());
-->
</Script>
</div><div id="Message" class="Message"></div></font></div>
<script type="text/javascript">
document.body.oncopy = function () { setTimeout( function () { var text = clipboardData.getData("text"); if (text) { text = text + "\r\n本篇文章来源于 中国建站之家 原文链接:"+location.href; clipboardData.setData("text", text); } }, 100 ) }
</script>
<br>
<a href="javascript:window.open('http://shuqian.qq.com/post?from=3&title='+encodeURIComponent(document.title)+'&uri='+encodeURIComponent(document.location.href)+'&jumpback=2&noui=1','favit','width=930,height=470,left=50,top=50,toolbar=no,menubar=no,location=no,scrollbars=yes,status=yes,resizable=yes');void(0)" style="text-decoration:none;color:#155da5;display:block;background:url('http://shuqian.qq.com/img/add.gif') no-repeat 0px 0px;height:23px;width:300px;padding:2px 2px 0px 20px;font-size:14px;">将本文收藏到QQ书签与更多好友分享</a>
<div></div>
</td>
<table width="575" border="0" cellpadding="0" cellspacing="0">
<tr>
</tr>
<tr>
<td align="right" height=25 bgcolor=#F7F7F7 >
<script language=javascript src=/wz/sg.JS></script>
[<a href=javascript:window.print()>打 印</a>]
</tr>
</table>
<table width="575" border="0" cellpadding="0" cellspacing="0">
<tr>
</tr>
<tr>
<td align="right" height=25 bgcolor=#F7F7F7 style="display:block;padding:0px 10px">
<font color=#000000>[<script language=JavaScript src="/Article/Hits.Asp?ArticleID=19840"></script>]</font>
[<a href="javascript:history.go(-1)">返回上一页</a>]
[<a href="/user/favorite.asp?action=add&topic=深入DREAMWEAVER插件的奥秘(2)">收 藏</a>]</td>
</tr>
<tr>
<table width="575" border="0" cellpadding="0" cellspacing="0">
<tr>
</tr>
<tr>
<td style="display:block;padding:0px 10px"><div><font color=#000000>上一篇文章:</font><a href=/Article/11/139/2007/2007041819839.html>深入DREAMWEAVER插件的奥秘(1)</a></div><div><font color=#000000>下一篇文章:</font><font color=#000000><a href=/Article/11/139/2007/2007041819841.html>深入DREAMWEAVER插件的奥秘(3)</a></font></div></td>
</tr>
</table>
<table width="575" border="0" cellpadding="0" cellspacing="0">
<tr>
<td class="titlebg1">∷相关文章评论∷ (评论内容只代表网友观点,与本站立场无关!) [<a href=/Article/comment.asp?ArticleID=19840 target=_blank>更多评论</a>...]</td>
</tr>
<tr valign="top">
<td></td>
</tr>
</table>
</td>
<td width="188" class="tableleft"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="titleback1">精彩推荐</td>
</tr>
<tr>
<td height="260" valign="center" class="showbody1"><script language=javascript src=/ad/180601.js></script></td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="titleback1">热门文章</td>
</tr>
<tr>
<td height="100" valign="top" class="showbody1"><table width="100%" border="0" cellpadding="2" cellspacing="0"><tr>
<td class="showlist11">· <a href='/Article/10/138/2005/200507256912.html' class="showlist" title="注册码大全二">注册码大全二</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/10/138/2005/200507256914.html' class="showlist" title="注册码大全四">注册码大全四</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/10/138/2005/200507256911.html' class="showlist" title="注册码大全一">注册码大全一</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/196/197/2005/2005081911736.html' class="showlist" title="要10G免费网络硬盘的请进来!">要10G免费网络硬盘的请进..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/206/2007/2007030319347.html' class="showlist" title="通过google 赶快来赚美金">通过google 赶快来赚美金..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/10/138/2005/200507256919.html' class="showlist" title="注册码大全十">注册码大全十</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/14/253/2005/2005092114218.html' class="showlist" title="头像-qq头像(qq新头像)4">头像-qq头像(qq新头像)4..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/13/150/2006/2006022316028.html' class="showlist" title="让你轻松架设FTP服务器1">让你轻松架设FTP服务器1..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/10/138/2005/200507256913.html' class="showlist" title="注册码大全三">注册码大全三</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/14/244/2005/2005092014121.html' class="showlist" title="梦幻背景图片7">梦幻背景图片7</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/14/249/2005/2005092114181.html' class="showlist" title="卡通动物图片6">卡通动物图片6</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/14/269/2005/2005092114241.html' class="showlist" title="网页制作素材-按钮素材2">网页制作素材-按钮素材2..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/13/150/2006/2006022316032.html' class="showlist" title="让你轻松架设FTP服务器5">让你轻松架设FTP服务器5..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/14/244/2005/2005092014153.html' class="showlist" title="风景图片8">风景图片8</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/10/138/2005/200507256918.html' class="showlist" title="注册码大全九">注册码大全九</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/13/150/2006/2006022316029.html' class="showlist" title="让你轻松架设FTP服务器2">让你轻松架设FTP服务器2..</a></td>
<td class="showlist12"></td>
</tr></table></td>
</tr>
<tr>
<td height="2" bgcolor="#FFFFFF"></td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="titleback1">关注此文读者还看过</td>
</tr>
<tr>
<td height="100" valign="top" class="showbody1"><table width="100%" border="0" cellpadding="2" cellspacing="0"><tr>
<td class="showlist11">· <a href='/Article/10/131/2005/2005091512350.html' target="_blank" class="showlist" title="ASP+上载例子">ASP+上载例子</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/10/133/2005/200507216326.html' target="_blank" class="showlist" title="php3,4中session的实现">php3,4中session的实现</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/10/133/2005/20050718852.html' target="_blank" class="showlist" title="PHP, JScript 和 VBScript 函数和类的语法">PHP, JScript 和 VBScri..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/190/192/2007/2007092322065.html' target="_blank" class="showlist" title="范文中国增加网站的PV(点击率)方法总结">范文中国增加网站的PV(点..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/196/197/2006/2006122518443.html' target="_blank" class="showlist" title="vdpg.net/50M-2G/500M-30G/FTP/PHP/MYSQL/CP/论坛申请">vdpg.net/50M-2G/500M-3..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/10/131/2007/2007090721754.html' target="_blank" class="showlist" title="ASP.NET构架与安全机制之Http请求处理">ASP.NET构架与安全机制之..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/10/133/2005/200507309385.html' target="_blank" class="showlist" title="BBS(php & mysql)完整版(四)">BBS(php & mysql)完..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/10/130/2005/20050718608.html' target="_blank" class="showlist" title="用ASP实现对MP3曲目信息的操作">用ASP实现对MP3曲目信息..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/223/291/2007/2007090421699.html' target="_blank" class="showlist" title="易观国际:支付宝进军海外三重用意">易观国际:支付宝进军海..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/10/130/2005/200507277896.html' target="_blank" class="showlist" title="ASP数据库连接方式大全 一">ASP数据库连接方式大全 ..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/11/143/2005/200507193415.html' target="_blank" class="showlist" title="蛋壳制作及破壳而出的人物合成(4)">蛋壳制作及破壳而出的人..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/223/291/2007/2007112822688.html' target="_blank" class="showlist" title="与Google竞争 雅虎将推出结构搜索功能">与Google竞争 雅虎将推出..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/10/135/2006/2006112818226.html' target="_blank" class="showlist" title="css布局定位系列:相对定位">css布局定位系列:相对定..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/10/137/2007/2007081321348.html' target="_blank" class="showlist" title="解析:Oracle 10g EM Database Console">解析:Oracle 10g EM Da..</a></td>
<td class="showlist12"></td>
</tr><tr>
<td class="showlist11">· <a href='/Article/10/133/2005/200507216235.html' target="_blank" class="showlist" title="PEAR:使用PHPDoc轻松建立你的PEAR文档">PEAR:使用PHPDoc轻松建..</a></td>
<td class="showlist11"></td>
</tr><tr>
<td class="showlist12">· <a href='/Article/10/133/2005/200507309095.html' target="_blank" class="showlist" title="用php来检测proxy">用php来检测proxy</a></td>
<td class="showlist12"></td>
</tr></table></td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="titleback1">相关文章</td>
</tr>
<tr>
<td height="100" valign="top" class="showbody1">· <a href="/Article/11/139/2007/2007041819841.html" title='深入DREAMWEAVER插件的奥秘(3)'>深入DREAMWEAVER插件..</a><br>
· <a href="/Article/11/139/2007/2007041819839.html" title='深入DREAMWEAVER插件的奥秘(1)'>深入DREAMWEAVER插件的奥秘..</a><br></td>
</tr>
</table>
</td>
</tr>
</table>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" class="tableborder">
<tr>
<td height="3"></td>
</tr>
</table>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" class="tableborder">
<tr>
<td height="23" align="right">
<table width="100%" border="0" cellspacing="0" class="tablebody8" cellpadding="0">
<tr>
<td height="5"></td>
</tr>
<tr>
<td height="23" align="right" valign="middle"><center><a href="/support/about.asp" class="navmenu2">关于本站</a> -
<a href="/support/help.asp" class="navmenu2">网站帮助</a> -
<a href="/support/advertise.asp" class="navmenu2">广告合作</a> -
<a href="/support/declare.asp" class="navmenu2">下载声明</a> -
<a href="/link/" target="_blank" class="navmenu2">友情连接</a> -
<a href="/support/sitemap.asp" class="navmenu2">网站地图</a> -
<a href="#" target="_blank" class="navmenu2">人才招聘</a>
</tr>
</table></td>
</tr>
<tr>
<td height="1"></td>
</tr>
</table>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" class="tableborder">
<tr>
<td height="60" align="center" class="tablebody1">网站合作、内容监督、商务咨询:QQ: 9576619
<br>
Copyright ? 2005--2008 中国建站之家版权所有
<br><a href="http://www.miibeian.gov.cn" target="_blank" title="粤ICP备05092265号"><font color=#000000>粤ICP备05092265号
</font><br><script src='http://s6.cnzz.com/stat.php?id=44148&web_id=44148&show=pic' language='JavaScript' charset='gb2312'></script> </td>
<script language="javascript" src="/inc/Std_StranJF.Js"></script>
</table>
</body>
</html>
<span id="naruco_ad_body" style="display:none;">
<script language=javascript src=/adfile/top.js></script>
</span>
<script type="text/javascript">
var naruco_ad = document.getElementById('naruco_ad');
if (naruco_ad != null) {
naruco_ad.innerHTML=naruco_ad_body.innerHTML;
naruco_ad_body.innerHTML="";
}
</script>