将脚本部件中的函数绑定到由主机发送的通知消息。
behavior.attachNotification (fpNotify)
注意 在缺省情况下, 由 Behavior 处理程序说明的属性和方法是自动添加到全局的脚本命名空间,并不必引用 Behavior 处理程序 ID 就可以访问这些属性和方法。在这种情况下,不必象语法中所示的那样使用 Behavior.attachNotification,只需简单地用 attachNotification 就可以在脚本中使用该属性。详细信息请参阅<implements> 元素。
目前主机可以使用下述通知来调用指定的函数:
注意 attachNotification 方法不会通知在文档、窗口或页面中任何元素内发生的脚本部件的标准事件。接受这种类型的通知的可取方法是使用 DHTML achEvent 方法。
在处理元素的 DHTML 样式属性的更改(诸如设置其可见性、更改颜色或更改字体)时,建议将这些更改内嵌在脚本部件的 <script> 元素内,如下面的脚本部件片段所示。在 documentReady 通知内进行这种更改将导致轻微闪烁。
注意 CDATA 项是必需的,以使 <script> 元素中的脚本成为不透明的。详细信息请参阅脚本部件文件和 XML 一致性。
<implements type="Behavior"/> <script language="JScript"> <![CDATA[ style.color = "green"; style.letterSpacing = 5; ]]> </script>
下面的示例演示了如何设置一个函数来捕获通知并进行适当的处理。
注意 CDATA 项是必需的,以使 <script> 元素中的脚本成为不透明的。详细信息请参阅脚本部件文件和 XML 一致性。
<?XML version="1.0"?> <component> <implements type="Behavior"> <event name="onResultChange"/> </implements> <script language="JScript"> <![CDATA[ attachNotification (onNotification); function onNotification (sNotification){ if (sNotification == "contentReady"){ // 元素的内容已被更改。 } else if (sNotification == "documentReady"){ // 主机已完成对元素的分析。 } window.status = sNotification; } ]]> </script> </component>