`getBoundingClientRect()`返回什么类型?

时间:2016-02-10 23:46:19

标签: typescript

也许这是一个愚蠢的问题。

getBoundingClientRect()返回什么类型?我有以下错误:

var logo1: HTMLElement = document.getElementById('test'); 
var logo1TextRectangle: DOMRect = logo1.getBoundingClientRect(); <- error

错误TS2304:找不到姓名&#39; DOMRect&#39;。

我看这个https://developer.mozilla.org/en-US/docs/Web/API/Element/getBoundingClientRect

var logo1TextRectangle: nsIDOMClientRect = logo1.getBoundingClientRect(); <- error

错误TS2304:找不到名称&#ns; nsIDOMClientRect&#39;。

https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIDOMClientRect

我知道我可以使用它:

var logo1TextRectangle: any = logo1.getBoundingClientRect();

但是有人可以告诉我什么是返回的类型,或者告诉我一个链接,我可以看看返回的类型。谢谢,抱歉我的英文。

1 个答案:

答案 0 :(得分:14)

  

什么样的返回getBoundingClientRect()

它实际上返回ClientRect

var logo1: HTMLElement = document.getElementById('test'); 
var logo1TextRectangle: ClientRect = logo1.getBoundingClientRect();

更多

FWIW你可以让编译器为你推断它:

var logo1: HTMLElement = document.getElementById('test'); 
var logo1TextRectangle = logo1.getBoundingClientRect();

如果将鼠标悬停在变量上,您会看到其正确推断:

enter image description here