엘레멘트에서 첨부된 비헤이버가 제거되기 바로전에 발생된다.

<PUBLIC:ATTACH event=ondetach for=object id=sID onevent=handler>

event 선택적인 요소이며, 이벤트 이름(이벤트 목록)을 지정하거나, HTC 목록에 열거된 컴포넨트의 특정 이벤트를 지정하는 문자열이다.
for 선택적인 요소이며, 이벤트 원천 엘레멘트를 인식하기 위하여 지정하는 문자열이다.
document document 개체를 참조한다.
element 디폴트이며, 비헤이버가 첨부된 엘레멘트를 참조한다.
window window 개체를 참조한다.
id 선택적인 요소이며, 콤포넨트 속의 PUBLIC:ATTACH 엘레멘트의 유일한 인식자를 지정하는 문자열이다.
onevent 필수적인 요소이며, 인라인 스크립트를 지정하거나 이벤트처리자 기능함수를 직접적으로 호출하는 문자열이다.
특기

ondetach 이벤트는 엘레멘트로부터 완전히 제거되기 바로전에 일종의 정리를 수행할 수 있게 해 준다.

attachEvent 메서드를 사용하여 모체 문서에서 비헤이버가 이벤트에 첨부되어 있으면, 이 이벤트는 비헤이로 하여금 문서로부터 통보 받음을 중시지키기 위하여 detachEvent 메서드를 호출 할 수 있게 한다.

PUBLIC:ATTACH 엘레멘트를 사용하여 문서의 이벤트에 첨부된 비헤이버는, 비헤이버가 제거되면, 통보 받음을 자동적으로 중시지키며, ondetach 이벤트가 발생되면 detachEvent 메서드를 사용할 필요는 없다.

참조
detachEvent, attachEvent, behavior

DIV에서 ondetach 이벤트 예제

DIV에서 ondetach 이벤트 예제에 마우스를 올려보라.
결과 표시창

ondetach 이벤트로 당초에 첨부된 강조 비헤이버에서 목록 항목의 강조 효과를 변경시킨다.

<PUBLIC:ATTACH event="ondetach" onevent="cleanup()" />
<DIV id=divObj style="color:green;cursor:arrow;border:solid 1 blue;padding:5;background:ffa">
DIV에서 ondetach 이벤트 예제에 마우스를 올려보라.
</DIV>
<SCRIPT>
document.onload=doAtach();
function doAtach(){
  divObj.attachEvent ('onmouseover', Hilite);
  divObj.attachEvent ('onmouseout', Restore);
}
function doDetach(){
  divObj.detachEvent('onmouseover',Hilite);
  divObj.detachEvent('onmouseout', Restore)
  showA.innerHTML='';
}
function cleanup(){
  divObj.detachEvent ('onmouseover', Hilite);
  divObj.detachEvent ('onmouseout', Restore);
}
function Hilite(){
  str='';
  if (event.srcElement == divObj) {
    normalColor = divObj.style.color;
    divObj.runtimeStyle.color  = 'red';
    divObj.runtimeStyle.cursor = 'hand';
    doShow()
  }
}
function Restore(){
  if (event.srcElement == divObj) {
    divObj.runtimeStyle.color  = normalColor;
    divObj.runtimeStyle.cursor = 'arrow';
    doShow()
  }
}
function doShow(){
  str='event.srcElement.nodeName='+event.srcElement.nodeName+'<BR>';
  str+='event.srcElement.id='+event.srcElement.id+'<BR>';
  str+='event.type='+event.type+'<BR>';
  str+='normalColor='+normalColor+'<BR>';
  str+='divObj.runtimeStyle.color='+divObj.runtimeStyle.color+'<BR>';
  str+='divObj.runtimeStyle.cursor='+divObj.runtimeStyle.cursor+'<BR>';
  showA.innerHTML=str;
}
</SCRIPT>
<BUTTON onclick="doAtach()">이벤트 첨부</BUTTON>
<BUTTON onclick="doDetach()">이벤트 제거</BUTTON>
<DIV id=showA style=height:7em>결과 표시창</DIV>