像jQuery position方法一样在Angular中获取位置

时间:2018-07-25 16:33:22

标签: javascript angular typescript

在jQuery中,我们有position() method

$("button").click(function(){
    var x = $("p").position();
    alert("Top: " + x.top + " Left: " + x.left);
});

它将返回元素的位置。如何在Angular中做同样的事情?

2 个答案:

答案 0 :(得分:1)

请尝试:

在component.html中,定义对html标签的引用:

<p #position>I want to go back here</p>

在component.ts中:

@ViewChild('position') HoldPosition: ElementRef;

clickFunction() {
  console.log(this.HoldPosition.nativeElement.offsetTop);
  console.log(this.HoldPosition.nativeElement.offsetLeft);

}

```

答案 1 :(得分:0)

document.querySelector('p').offsetTop 

这将获取相对于其父对象的顶部位置,以及相对于左角的offsetLeft