我需要一个函数来获取特定div中的所有图像,我尝试使用BrowserDomAdapter
但是它会抛出此错误el.querySelector is not a function
,事实上我还没有声明任何{我的组件中的{1}}变量
el
更新
如果变量中包含import { BrowserDomAdapter} from '@angular/platform-browser/src/browser/browser_adapter';
...
...
constructor(private dom:BrowserDomAdapter){
}
ngAfterContentInit(){
this.lightboxImages();
}
lightboxImages(){
let dom = new BrowserDomAdapter();
let images = dom.querySelector('img','.post-body');
console.log(images);
}
标签,我该如何从中获取图像?
<img>
答案 0 :(得分:4)
BrowserDomAdapter
。它只适用于Angular内部使用。
我假设您要查询作为子项传递的元素,因为您使用ngAfterContentInit
:
@Component({
...
template: `
...
<div #wrapper>
<ng-content></ng-content>
</div>
...
`
})
export class MyComponent {
@ViewChild('wrapper') wrapper:ElementRef;
ngAfterContentInit(){
this.lightboxImages();
}
lightboxImages(){
let images = this.wrapper.nativeElement.querySelector('img','.post-body');
console.log(images);
}
}
答案 1 :(得分:-1)
this.containerBlock.nativeElement.getElementsByTagName(“ img”)
containerBlock是模板引用。这将返回div中带有模板引用containerBlock的所有img标签。