2017-01-26 12 views
2

私は* ngForの中に動的に作成されたコンポーネントを持っていますが、ViewChildrenでそれらを取得した後に、どのようにoffsettopとoffsetleftを取得しますか?ここでviewchildrenのためのoffsettopとoffsetleft

テンプレート

<anchor #myanchor></anchor> 

クラス

@ViewChildren('myanchor') anchors: QueryList<any>; 

がngAfterViewInit

ngAfterViewInit(){ 
    this.anchors.map(i=>{ console.log(i); }) 
} 

である私はViewChildを通じて、単一の要素の位置を取得することができていますが、ViewChildrenを助ける必要があります。すべてのポインタが評価されます。

答えて

0
ngAfterViewInit(){ 
    this.anchors.toArray() 
    .map(i=>{ console.log(i.nativeElement.offsetTop); }) 
} 

#myanchorではなく、プレーンなDOM要素のコンポーネントまたはディレクティブ上にある場合は、ElementRef

@ViewChildren('myanchor', {read: ElementRef}) anchors: QueryList<ElementRef>; 

も参照してくださいangular 2/typescript : get hold of an element in the template

+0

おかげギュンターを取得するためにreadを追加する必要があります。要素のoffsetTopまたはoffsetHeightは、親内の相対的な高さを示しています。ページ上の絶対座標を取得する方法はありますか? – sv16

+0

わかりませんが、普通のJSと同じです。 –

関連する問題