2012-02-04 3 views
0

insertafter attribute을 사용하여 특정 컨텍스트 메뉴 항목 뒤에 자신을 배치하는 XUL menuitem 요소가 있습니다. 내 메뉴 항목의 위치를 ​​변경하려는 경우가 하나 있습니다. JavaScript를 사용하여 insertafter 속성을 동적으로 변경하면 다음에 상황에 맞는 메뉴가 표시 될 때 내 항목의 위치가 자동으로 변경됩니까? 또는 insertafter은 크롬 초기화 중에 만 적용됩니까?XUL 항목의 insertafter 속성을 동적으로 변경할 수 있습니까?

문서 상태 :이 값은 스캔하고 창에있는 제 하나를 사용 IDS, 쉼표로 구분 될 수있다

.

그러나 내 경우에는 가능한 모든 ID가 물리적으로 존재합니다 (상황에 따라 둘 중 하나만 축소됩니다). 따라서 쉼표로 구분 된 목록은 도움이되지 않습니다.

답변

1

아니요, 창이로드 될 때 오버레이가 적용됩니다. 변경 후 insertafter 속성은 전혀 변경되지 않으며 특별한 의미가 없습니다. 다음 줄을 따라 일반적인 DOM 메소드를 사용해야합니다.

var myElement = document.getElementById("my-element"); 
var insertAfter = document.getElementById("element-insert-after"); 
if (myElement && insertAfter) 
    insertAfter.parentNode.insertBefore(myElement, insertAfter.nextSibling); 
관련 문제