지정된 엘레멘트에 모든 읽기/읽기쓰기 애트리뷰트들을 복사한다.

인수/파라메터
object : (개체)
필수적인 요소이며, 적용할 수 있는 개체이다.
oSource
필수적인 요소이며, mergeAttributes 메서드로 애트리뷰트가 복사될 개체를 지칭하는 지시자이다.
bPreserve
선택적인 요소이며, IE5.5에서 사용 가능하고, 애트리부트가 통합되는 개체의 동일성을 유지하는가를 나타내는 부울값이다.
true 디폴트이며, 애트리부트가 통합(merge)되는 개체의 동일성(identity)을 유지한다.
false 애트리부트가 통합되는 개체의 동일성을 유지하지 않는다.
반환값

반환값은 없다.

특기

mergeAttributes 메서드는 원래의 HTML 애트리뷰트(attribute), 이벤트(event)와 스타일(style)들을 복사한다.

IE5.5에서는 id 속성과 같은 읽기 전용 애트리뷰트들은 통합(merge)되지 않았었다.

IE5.5에서는 목표 개체의 동일성(identity) 유지에서 bPreserve를 설정하지 않고, 개체의 idname 속성을 포함하여 모든 애트리뷰트를 통합(merge)할 수 있게 되었다.

적용
개체scriptIE
참조
clearAttributes (영문)DOM(W3C Document Object Model)

속성들이 설정된 원본 DIV1 엘레멘트.
단추로 위 DIV1 속성이 복사되는 DIV2 엘레멘트.
결과 표시창

mergeAttributes 메서드로 복사한 후에는 내용만 다고 모든 엘레멘트의 속성들은 같아진다.

<SCRIPT>
function doMerge(){
  oSource.children[1].mergeAttributes(oSource.children[0]);
  str='<TABLE border=1><TR bgcolor=dddddd align=center><TD>div1Obj</TD><TD>div2Obj</TD></TR>';
  for (i=0;i< oSource.children[0].attributes.length;i++){
    if (oSource.children[0].attributes[i].specified)
    str+='<TR><TD>'+oSource.children[0].attributes[i].name+'='+oSource.children[0].attributes[i].value+'</TD>';
    if (oSource.children[1].attributes[i].specified)
    str+='<TD>'+oSource.children[1].attributes[i].name+'='+oSource.children[1].attributes[i].value+'</TD></TR>';
  }
  str+='</TABLE>';
  showA.innerHTML=str;
}
</SCRIPT>
<DIV id=oSource>
<DIV id="div1Obj" attribute1="true" attribute2="true" onclick="alert('클릭했다.');"
  style="border:solid 1 green;background-color:yellow;width:400"
  onmouseover="this.style.color='#0000FF';"
  onmouseout="this.style.color='#000000';">속성들이 설정된 원본 <B>DIV1</B> 엘레멘트.</DIV>
<DIV id="div2Obj" style="background-color:aqua">단추로 위 <B>DIV1</B> 속성이 복사되는 <B>DIV2</B> 엘레멘트.</DIV></DIV>
<INPUT type="button" value="MergeAttributes" onclick="doMerge()" >
<DIV id=showA>결과 표시창</DIV>