2012-08-28 3 views
1

오버레이에 표시해야하는 페이지에 DOM 조각이 있습니다.YUI - 노드를 복제하면 이벤트가 중복됩니다.

내가 노드를 교체 YUI를 사용하고 YUI 코드의 다음 줄에 오버레이에서 복제를 배치 :

var overlayContent = content.replace(content.cloneNode(true)); 

내가 경험하고 문제는 이제 콘텐츠를 여러 AJAX가 호출을 보낼 것이다 서버. 사용자가 버튼을 클릭하여 항목을 증가 시키면 단수 항목 대신 여러 세트가 추가되고 2의 배수로 작동하는 것처럼 보입니다.

나는 YUI에 대해 처음 이래서 이런 일이 일어나지 않도록 방지하는 방법을 알고 있으며이를 방지하기위한 방법을 고맙게 생각합니다.

+1

Y.Panel을 사용하여 적절한 #src 노드를 사용 했습니까? – olan

답변

0

복제를 사용하지 않고 기존 구현을 다시 엔지니어링하기로 결정했습니다.

대신 DOM에서 기존 조각을 오버레이로 가져온 다음 오버레이를 닫은 상태에서 원래 있던 부분을 원래대로 되돌립니다.

1

YUI 오버레이의 본문 내용을 설정하는 동안 노드를 복제하는 것은 좋지 않습니다. 오버레이의 본문 내용으로 일반 마크 업 (getHTML() 메서드를 사용하여 가져올 수 있음)을 전달해야합니다.

관련 문제