0
DOM 요소를 클래스로 가져 오려고 시도하고 있는데 왜 반환되지 않았는지 확실하지 않습니다. 문제없이 상위 요소를 쿼리 할 수 있습니다. 콘솔Dojo가 undefined를 반환합니다.
var contentPane = query('.contentPane', this.map.infoWindow.domNode)[0];
var header = query('.header', this.map.infoWindow.domNode)[0];
console.log(header);
console.log(contentPane);
출력 :
>>undefined
<div class="contentPane">
<div class="esriViewPopup" id="esri_dijit__PopupRenderer_1" widgetid="esri_dijit__PopupRenderer_1">
<div class="mainSection">
<div class="header" dojoattachpoint="_title"></div>
<div class="hzLine"></div>
<div dojoattachpoint="_description"></div>
<div class="break"></div>
</div>
<div class="attachmentsSection hidden">
</div>
<div class="mediaSection hidden">
</div>
<div class="editSummarySection hidden" dojoattachpoint="_editSummarySection">
</div>
</div>
</div>
dojo를 사용하지 않았으므로 응답 할 수있는 최선의 방법은 아니지만 .header 노드에 내용을 추가하는 것이 어떤 차이가 있습니까? –
'contentPane'은'infoWindow'의 일부이고 헤더 섹션은 동적으로 생성됩니다. 당신이 질주 할 때에 따라, 그것은 정의되지 않을 수 있습니다. fiddler를 설정하여 더 많은 코드를 쿼리하거나 공유하는 방법을 보여줄 수 있습니까? –
'.header'는 하위 위젯의 일부입니다. 즉'.header'는 파싱하고 하위 폴더'esri_dijit__PopupRenderer_1'을 생성 한 후에 만 dom에 있습니다. Chanc은 당신이 렌더링하기 전에'쿼리하기 '라는 것입니다. – ben