angularjs的controller里面获取不到图片的高度怎么办?

我想打算用 offsetHeight 获取图片的高度 。
angular.element(img).ready 这个是dom树加载完就立即执行了。此时图片还没显示出来;所以offsetHeight 获取的高度是0.

想用onload 但是在controller 里面好像是无效的。


江户川乱折腾
浏览 691回答 1
1回答

红颜莎娜

要引入angular版的jquery 叫jqLiteangular.element('#img').height();或者angular.element(document.querySelector('#img'))[0].offsetHeight<body&nbsp;ng-app="myModule"> &nbsp;&nbsp;&nbsp;&nbsp;<h1&nbsp;my-directive>Hello&nbsp;Plunker!&nbsp;width:&nbsp;{{width}},&nbsp;height:&nbsp;{{height}} &nbsp;&nbsp;&nbsp;&nbsp;</h1> &nbsp;&nbsp;</body> angular.module('myModule',&nbsp;[]) &nbsp;&nbsp;.directive('myDirective',&nbsp;function($timeout)&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;restrict:&nbsp;'A', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;link:&nbsp;function(scope,&nbsp;element)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scope.height&nbsp;=&nbsp;element.prop('offsetHeight'); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scope.width&nbsp;=&nbsp;element.prop('offsetWidth'); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;}; &nbsp;&nbsp;}) ;
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript