ondetach Event

Internet Development Index

Fires before a behavior is detached from an element.

Syntax

<PUBLIC:ATTACH
EVENT = ondetach
ONEVENT = sEventHandler
FOR = element
ID = sID
/>

Attributes

EVENT
Required. String that specifies the name of a Dynamic HTML (DHTML) event, or any of the events specific to the HTML Component (HTC) that are listed in the HTC Reference.
FOR
Optional. String that specifies one of the following values to identify the source of the event.
documentRefers to the document object.
elementDefault. Refers to the element to which the behavior is attached.
windowRefers to the window object.
ID
Optional. String that uniquely identifies the PUBLIC:ATTACH element within the component. This attribute is analogous to the ID attribute in DHTML.
ONEVENT
Required. String that specifies an inline script or a direct invocation of the event handler function.

Remarks

The ondetach event allows the behavior to perform some cleanup just before it completely detaches from the element.

In cases where a behavior attaches to events on the containing page using the attachEvent method, this event gives the behavior the opportunity to call the detachEvent method to stop receiving notifications from the page. A behavior that attaches to events on the page using the PUBLIC:ATTACH element automatically stops receiving notifications when the behavior detaches from the element, and does not need to call the detachEvent method when the ondetach event fires.

Example

This example uses the ondetach event to turn off the highlighting effect on a list of items initially attached to a highlighting behavior.

<PUBLIC:ATTACH EVENT="ondetach" ONEVENT="cleanup()" />
<SCRIPT LANGUAGE="JScript">
attachEvent ('onmouseover', Hilite);
attachEvent ('onmouseout', Restore);
function cleanup()
{
detachEvent ('onmouseover', Hilite);
detachEvent ('onmouseout', Restore);
}
function Hilite()
{
if (event.srcElement == element)
{
normalColor = style.color;
runtimeStyle.color  = "red";
runtimeStyle.cursor = "hand";
}
}
function Restore()
{
if (event.srcElement == element)
{
runtimeStyle.color  = normalColor;
runtimeStyle.cursor = "";
}
}
</SCRIPT>

See Also

detachEvent, attachEvent, Introduction to DHTML Behaviors, About Element Behaviors, Using HTML Components to Implement DHTML Behaviors in Script