这是我的代码:
<img ng-show="json.user.picture" ng-src="{{json.user.picture}}" ng-error="json.user.picture = false">
当您无权使用来自外部网站的图像时,您会收到 404 代码,当发生这种情况时,我不想显示该图像。我正在使用上面的代码执行此操作并且它可以工作,但它仍然显示损坏的图像几毫秒,您如何才能摆脱它?
在 ng-show 和 ng-hide 之间有一个小的延迟显示损坏的图像,如何摆脱它?
最佳答案
我认为问题在于;你正在使用 json.user.picture
作为显示图像的条件以及图像的来源。所以如果ng-error
触发它会改变json.user.picture
至 false
所以图像源变成false
并尝试加载名称为 false
的图像喜欢<img src='false'>
这将再次引发错误。
所以你必须使用一个额外的变量,比如 showImage
这将是 true
默认情况下。出错时将其更改为 false
并在 ng-show
中使用它
所以它会像
<img ng-show="showImage" ng-src="{{json.user.picture}}" ng-error="showImage = false">
关于javascript - 在 404 代码上隐藏图像,仍然显示损坏的图像几毫秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40932311/