繁体   English   中英

计算/获取角度的隐藏div宽度

[英]calculate/get hidden div width in angular

在Angular中,我有一个隐藏的div ,它在事件中应该可见。
事件触发相应的方法。 到现在为止还挺好。
但是我需要在显示它之前计算div位置。 我使用以下代码来获取div边界并计算实际位置, 但是div的宽度为零,因为它是隐藏的。

EventTriggerMethod(myDiv){
  console.log(myDiv.getBoundingClientRect().width);
  //OR
  console.log(window.getComputedStyle(myDiv).width);
  //Both return 0 when div is hidden.
}

当它不可见时,如何获得div的实际宽度?

元素必须可见且不具有display:none才能计算其大小。 我见过的两种解决方法是:

1)将组件放置在屏幕之外并计算尺寸。 2)关闭display:none ,计算尺寸,然后重新打开display:none

只要您在同一功能中执行#2,它就永远不会显示,因为浏览器的重绘功能只有在您完成功能后才会发生。 而且由于display:none会在函数结束时重新打开,因此该元素将永远不会显示。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM