vue判斷圖片為空或者圖片加載不成功時顯示默認圖片


 

純css解決方案:

<img src="broken.png" alt="">

 

img {
  position: relative;
}

img:after { 
  content: url('替代圖片');
  display: block;
  position: absolute;
  // 底下是故意要填滿並且背景填滿擋住底下那個很醜的加載失敗圖片(字體)
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
}

 

這樣使用是應為img標簽的一些特性:

1,img是個比較特殊的標簽,和video一樣具有被替代性,所有當圖片加載成功時,原先定義的偽類會失去作用不提示。

2,alt屬性會在圖片加載失敗是出現(替代文字),這樣偽類就會起作用了。

 

 

網上很多說這樣也可以解決,但我測試暫未成功:

<div class="bg">
     <img :src="goods.phoneFloorAd.resUrl" :onerror="errorImg01">
</div>
<script type="text/ecmascript-6">
export default {
        data () {
            return {
              errorImg01: 'this.src="' + require('assets/images/load_logo01.png') + '"'
        };
    }
}
</script>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM