javascript - 在 404 代码上隐藏图像,仍然显示损坏的图像几毫秒

标签 javascript html css angularjs src

这是我的代码:

<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.picturefalse所以图像源变成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/

相关文章:

javascript - XMLHttpRequest 发送 post 请求并接收 2 个响应

javascript - 如何在 jQuery 中识别 Android 手机或平板电脑?

javascript - 使用 javascript/php 更新查询值

html - 表格中的全 Angular 背景

css - 内联对齐 div

javascript - 自动换行 : ellipsis without css

javascript 事件仅在离开站点时发生

html - 如何并排生成盒子

javascript - 单击时跨度子对象

CSS 导航栏 div 层无法在 IE 上正确显示