行为(behaviors)允许访问者改变网页内容或执行特定的任务。行为是事件(event)和动作(action)的组合,浏览器响应用户的动作产生事件。
历史面板是Dreamweaver3.0新增加的一个功能,它允许我们撤消很多步的操作,更让我们可以方便地制作个性化的命令,就象在Photoshop中录制宏一样。历史面板通常与行为控制器叠合在一起,这样切换很方便。
12.1 行为控制器
使用行为控制器能够为对象添加行为或修改已有的行为。行为依照事件的字母顺序排列,如果同一事件有多个动作,动作将按执行的顺序排列。当前选择的对象对应的标签出现在行为检查器的顶端。
可以使用Window>Behaviors(窗口>行为)或单击右下角的行为按钮打开行为控制器。
在行为控制器中:
显示可以发生的动作列表。从中选择一个动作将打开该动作相应参数的对话框。
从行为控制器的动作列表中删除选中的动作及其相关的事件。
Events For 指定浏览器类型以确保当前行为有效。你的选择将决定事件弹出菜单中有哪些事件可供选择。
Up(向上)按钮和 Down(向下)按钮 由于动作按指定顺序执行,移动上下箭头按钮能改变行为列表中动作发生的顺序。
Events(事件) 显示能触发动作的所有事件。选择不同的对象,将出现不同的事件。选择动作才会出现相应的事件(Events)。另外,浏览器不同,相同对象能触发的事件也各不相同,可从Events For弹出菜单中选择相应的浏览器环境。
12.2 关于事件
当访问者和你的网页交互(例如单击一幅图像)时,浏览器产生事件,而且这些事件通常能够调用javascript从而导致动作的发生。DreamWeaver提供了许多常用的事件能够触发的动作。以下列表描述的是行为控制器动作弹出菜单中能够和动作相链接的事件。
事件 作用
onAbort 当访问者中断浏览器正在载入图像的操作时产生。
onAfterUpdate 当网页中bound(边界)数据元素已经完成源数据的更新时产生该事件。
onBeforeUpdate 当网页中bound(边界)数据元素已经改变并且就要和访问者失去交互时产生该事件。
onBlur 当指定元素不再被访问者交互时产生。
onBounce 当marquee(选取框)中的内容移动到该选取框边界时产生。
onChange 当访问者改变网页中的某个值时产生。
onClick 当访问者在指定的元素上单击时产生。
onDblClick 当访问者在指定的元素上双击时产生。
onError 当浏览器在网页或图像载入产生错位时产生。
onFinish 当marquee(选取框)中的内容完成一次循环时产生。
onFocus 当指定元素被访问者交互时产生。
onHelp 当访问者单击浏览器的Help(帮助)按钮或选择浏览器菜单中的Help(帮助)菜单项时产生。
onKeyDown 当按下任意键的同时产生。
onKeyPress 当按下和松开任意键时产生。此事件相当于把onKeyDown和onKeyUp这两事件合在一起。
onKeyUp 当按下的键松开时产生。
onLoad 当一图像或网页载入完成时产生。
onMouseDown 当访问者按下鼠标时产生。
onMouseMove 当访问者将鼠标在指定元素上移动时产生。
onMouseOut 当鼠标从指定元素上移开时产生。
onMouseOver 当鼠标第一次移动到指定元素时产生。
onMouseUp 当鼠标弹起时产生。
onMove 当窗体或框架移动时产生。
onReadyStateChange 当指定元素的状态改变时产生。
onReset 当表单内容被重新设置为缺省值时产生。
onResize 当访问者调整浏览器或框架大小时产生。
onRowEnter 当bound(边界)数据源的当前记录指针已经改变时产生。
onRowExit 当bound(边界)数据源的当前记录指针将要改变时产生。
onScroll 当访问者使用滚动条向上或向下滚动时产生。
onSelect 当访问者选择文本框中的文本时产生。
onStart 当Marquee(选取框)元素中的内容开始循环时产生。
onSubmit 当访问者提交表格时产生。
onUnload 当访问者离开网页时产生。
12.3 加入行为
可以将行为附加给整个文档(即附加给BODY标签),也可以将它附加给链接、图像、表单元素或任其它HTML元素。
每个事件可以指定多于一个的动作,动作将按其在行为控制器动作列中的顺序依次发生。
要附加行为:
1、选择一个对象。如果要给整个网页附加行为,请单击文档窗口左下角(即状态栏)标签选择器中的标签;单击
则选中一段。
2、此时,所选择对象相应的HTML标签将出现在行为控制器的标题栏中。单击加号按钮,并从动作弹出菜单中选择一动作。此时,显示该动作的参数和说明的对话框出现,为动作输入参数后单击OK。
3、触发动作的默认事件出现在Events(事件)列中。如果想改变默认事件,可以从事件弹出菜单中选择其它事件
12.4 行为的使用
DreamWreaver自带的行为动作有不少,下面就分别介绍。
1.Call javascript
Call javascript(调用javascript)动作允许使用行为控制器指定当事件发生时将被执行的自定义函数或javascript代码行。
要使用Call javascript(调用javascript)动作:选择一对象并打开行为控制器,单击加号按钮,从动作弹出菜单中选择Call JavaScrip,在弹出的对话框中键入将要执行的javascript或函数名。
2.Change Property
使用Change Property(改变属性)动作能够改变对象的属性值。能改变的属性是由目标浏览器的类型决定的。Internet Explorer(IE)4.0浏览器能够改变的属性比IE3.0或Netscape Navigator3.0或4.0浏览器多得多。要使用改变属性动作,必须十分熟悉HTML和javascript语言。
3.Check Browser
使用Check Browser(检查浏览器)动作可以根据访问者浏览器的类型和版本发送不同的网页。例如,如果访问者使用的是Netscape Navigator4.0或其后续版本的浏览器,你可以将其引导到一个网页;如果访问者使用的是Internet Explore4.0或其后续版本的浏览器,你可以将其引导到另一个网页;如果访问者使用的是其它类型的浏览器,你可以保留当前网页。
4.Check Plugin
使用Check Plugin(检查插件)动作可以根据访问者是否安装特定插件决定是否给他发送不同网页。例如,你可以让安装了Shockwave插件的访问者访问一网页,而未安装的访问者访问另一网页。
5.Control Shockwave or Flash
使用Control Shockwave or Flash(控制Shockwave或Flash电影)动作可以播放、停止、回放或转到Shockwave或Flash电影中的某一帧。
6.Drag Layer
Drag Layer(拖动层)动作允许访问者使用拖动层的操作。使用这个动作你可以创建动脑筋、滑动控制和其它可移动的网页页面元素。
7.Go TO URL
使用Go TO URL(转到URL)动作可以在当前窗口或指定框架中打开一新的网页。这个动作对于想单击一次便改变两个或更多个框架中的内容特别有用。此外,在Timeline(时间轴)中,可以调用该动作使访问者经过特定时间间隔后跳转到另一网页。
8.Jump Menu
当使用Insert>Form Object>Jump Menu(插入>表单对象>跳转菜单)建立一个Jump Menu(跳转菜单)动作时,DreamWeaver创建菜单对象,并为该对象附加适当的行为,通常无须手工添加Jump Menu(跳转菜单)动作,我们可以在行为控制器中双击一已存在的跳转菜单动作来编辑新的。
9.Jump Menu Go
使用Jump Menu Go(跳转菜单到)动作能把Go(到)按钮和Jump Menu(跳转菜单)联系在一起。当然,在使用这个动作之前,文档中必须已经创建了Jump Menu。在浏览器中单击Go按钮就能打开Jump Menu中已经选择好的链接。通常,Jump Menu并不需要Go按钮,只要从跳转菜单中选择一菜单项就会载入相应的URL链接。但是,当访问者从跳转菜单中再次选择同一菜单项时,载入相应的URL动作不会发生。此时,Go按钮就非常有用了。
10.Open Browser Window
使用Open Browser Window(打开浏览器窗口)动作可以在一新的窗口中打开一个URL。你可以指定新窗口的属性,包括它的大小、属性(窗体大小是否可调整,是否有菜单栏等)及名称。
如果你指定新窗口无属性,则新窗口将按启动它的窗口的大小及属性打开。为新窗口指定任何属性都将自动关闭其它所有未加指定的属性。例如,如果你指定新窗口无属性,则它可能以640×480像素大小打开,并且附加有一个导航工具栏、位置工具栏、状态栏及菜单栏;但是如果你仅仅指定新窗口以640×480像素大小打开,而没有指定其余的属性,则它以640×480像素大小打开,但没有附加导航工具栏、位置工具栏、状态栏、菜单栏、调整柄及滚动条,因而此行为非常适合打开一个定制的窗口,运用非常广泛。
11.Play Sound
使用Play Sound(播放声音)动作可以播放声音。例如,我们可能想让访问者将鼠标移动到链接上的时候产生声音效果,或在网页载入时播放音乐片段。
12.Popup Message
Popup Message(弹出消息)动作用我们指定的消息显示在javascript警告框中。由于javascript警告框中只有一个按钮(OK),因此可以使用这个动作给访问者提供信息而不是提供选择。
13.Preload Images
Preload Images(预先载入图像)动作载入那些不会立即在网页中出现的图像到浏览器缓存中,例如那些使用时间轴、行为或javascript变换的图像。这样可以防止图像显示时由于下载导致的延迟。
14.Set Nav Bar Image
使用Set Nav Bar Image(设置导航条图像)动作能将图像转换成导航条图像或改变导航条中图像的显示及动作。
15.Set Text of Frame
Set Text of Frame(设置框架中的正文)动作允许我们动态设置框架中的正文,可以用指定的内容替代原框架中的内容和格式。该指定的内容包含任何有效的HTML。
虽然Set Text of Frame(设置框架中的正文)动作可以替代原框架中的格式,但我们也可以通过选择保留背景颜色来保留网页的背景及文本颜色属性。
16.Set Text of Layer
Set Text of Layer(设置层中的正文)动作用指定的内容替代原层中的内容和格式。该指定的内容包含任何有效的HTML。
17.Set Text of Status Bar
Set Text of Status Bar(设置状态栏信息)动作在浏览器窗口左下角的状态栏内显示信息。例如,使用该动作可以在状态栏内描述一个链接的目的替代显示该链接的URL。
18.Set Text of Text Field
Set Text of Text Field(设置文本域中的文本)动作可以用你指定的内容替代表单对象中文本域中的内容。
19.Show-Hide Layers
使用Show-Hide Layers(显示或隐藏层)动作可以显示、隐藏或还原一个或多个层的默认的显示状态。当访问者和网页相交互时,该动作对于显示信息很有用。例如,当访问者将鼠标移到一幅地图上时,可以让访问者触发显示一个层,此层用以描述该地区的相关信息。
20.Swap Image
Swap Image(变换图像)动作可以通过改变IMG(图像)标签的SRC属性将该图像变换为另外一幅图像。使用该动作可以创建按钮变换和其它图像效果,包括一次变换多幅图像。由于在此动作中被影响到的只有SRC属性,因此变换图像应该和原图像有相同的尺寸(即高度和宽度都相同)以防止产生图像变形。
21.Swap Image Restore
Swap Image Restore(变换图像还原)动作可以将最后设置的变换图像还原为原始图像。当你为一对象附加Swap Image(变换图像)动作时,该动作将自动添加,如果此时选择了Restore Images onMouseOut(当鼠标移开图像时,变换图像还原)选项,那么Swap Image Restore(变换图像还原)动作就无须人工选择。
22.Go To Timeline Frame
Go To Timeline Frame(到时间轴帧)动作将playback head(播放头)移动到指定帧。你可以在时间轴检查器的行为通道中使用该动作来设置时间轴的某个部分循环若干次、创建Rewind(回退)链接或按钮、或者让访问者跳到动画的其它部分。
设置方法:打开时间轴检查器,在一时间轴上选择动画条上附加行为的帧,在行为检查器上单击加号按钮,从动作弹出菜单中选择Timeline>Go To Timeline Frame(时间轴>到时间轴帧)。在出现的对话框中选择一个时间轴,在Go to Frame(转到帧)域中输入帧号(即转到第几帧),单击OK。再将默认事件改为我们想要的。
23.Play Timeline and Stop Timeline
使用Play Timeline and Stop Timeline(播放时间轴和停止时间轴)动作可以允许访问者通过单击一个链接或按钮实现开始和停止播放时间轴;也可以允许访问者在鼠标移动到一个链接、图像或其它对象上时使时间轴自动开始和停止播放。如果你在时间轴检查器中选择Autoplay(自动播放)选项,Play Timeline(播放时间轴)动作将自动使用onLoad事件附加到BODY标签中。
24.Validate Form
Validate Form(验证表单)动作可以检测指定文本域中的内容以确保访问者输入的数据类型正确。用onBlur事件为单独的表单域附加该动作,则访问者填写表单时检测该域;用onSubmit事件为表单附加该动作,则访问者单击Submit(提交)按钮时立即评估若干个域。为表单附加该动作可以防止指定域包含无效数据提交给服务器的情况。
-----------------------------------------------------------------------------------------------
这回大家知道dw的行为怎么用了吧~很有用的文章,麻烦版主置顶:D
转自:数字面包