Angularjs 检测图像在屏幕上完成渲染的时间
这基本上是我的HTML。它是响应性设计的一部分,因此我不能依赖固定的宽度/高度:Angularjs 检测图像在屏幕上完成渲染的时间,angularjs,image,rendering,Angularjs,Image,Rendering,这基本上是我的HTML。它是响应性设计的一部分,因此我不能依赖固定的宽度/高度: <img ng-src="{{imageSrc}}" /> $scope.imageSrc的值在我的控制器内更改,视图正在正确更新 但是:在图像完成渲染时,我需要获取其clientWidth和clientHeight属性 那么我如何通过编程来检测呢 图像已完成加载和更新 视图已使用渲染图像完全更新 不使用奇怪的超时吗?另外两个问题将对您有所帮助。 这将通过load事件检测加载。 并将通过reque
<img ng-src="{{imageSrc}}" />
$scope.imageSrc
的值在我的控制器内更改,视图正在正确更新
但是:在图像完成渲染时,我需要获取其clientWidth
和clientHeight
属性
那么我如何通过编程来检测呢
不使用奇怪的超时吗?另外两个问题将对您有所帮助。 这将通过
load
事件检测加载。并将通过
requestAnimationFrame
检测渲染,我认为onload中的$timeout(,0)应该可以实现2的功能。它可以工作,但使用这种类型的“超时黑客”似乎很奇怪,我不认为这是一种黑客行为。Javascript是一个线程,所以将timeout与0一起使用是完全可以的,这样代码的行为非常稳定。好吧,至少我是这么认为的。我会检查这个的。是的,这很好。。。我甚至可以在第一个requestAnimationFrame回调中获得渲染图像的宽度/高度