0
私はクラスによってDOM要素を取得しようとしていますが、その戻り値が未定義であるかどうか不明です。私は何の問題もなく親要素を問い合わせることができます。ここに私のコードは次のとおりです。Dojoクエリは未定義を返します
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を使用していないので、私は答えには最適ではありませんが、そのヘッダーノードにいくつかのコンテンツを追加して何か違いはありますか? –
'contentPane'は' infoWindow'の一部ですが、ヘッダーセクションは動的に作成されます。あなたが調律しているときに応じて、それは不定になる可能性があります。どのように質問したり、もっとコードを共有しているかを示すために、フィドラーをセットアップできますか? –
'.header'はサブウィジェットの一部です。これは、 '.header'がDOM内にあるのは、サブウィジェット' esri_dijit__PopupRenderer_1'を解析して作成した後だけです。 Chancはレンダリングの前に 'クエリ'を実行しています – ben