最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

前端中骨架屏的三種運(yùn)用方式介紹

 更新時(shí)間:2025年05月21日 08:34:19   作者:拉不動(dòng)的豬  
這篇文章主要為大家詳細(xì)介紹了前端中骨架屏的三種運(yùn)用方式,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

一、骨架屏的三大運(yùn)用方式及案例

1.靜態(tài)HTML/CSS方案

<!-- 電商商品詳情頁案例 -->
<div class="skeleton-container">
  <div class="skeleton-header"></div>
  <div class="skeleton-gallery">
    <div class="skeleton-image"></div>
    <div class="skeleton-thumbnails">
      <div class="skeleton-thumb"></div>
      <div class="skeleton-thumb"></div>
    </div>
  </div>
  <div class="skeleton-content">
    <div class="skeleton-line" style="width:80%"></div>
    <div class="skeleton-line" style="width:60%"></div>
  </div>
</div>

<style>
.skeleton-image {
  background: linear-gradient(90deg,#f2f2f2 25%,#e6e6e6 50%,#f2f2f2 75%);
  animation: shimmer 1.5s infinite;
  height: 300px;
}
@keyframes shimmer {
  to { background-position-x: -200%; }
}
</style>

關(guān)鍵點(diǎn):通過CSS動(dòng)畫模擬加載效果,需精確匹配真實(shí)DOM結(jié)構(gòu)

2.組件化方案(Vue/React)

// Vue動(dòng)態(tài)骨架屏組件
<template>
  <div v-if="loading" class="skeleton-wrapper">
    <SkeletonItem v-for="i in 5" :key="i" 
      :width="i===1 ? '80%' : '100%'" 
      :height="i===1 ? '24px' : '16px'"/>
  </div>
  <div v-else>
    <ActualContent :data="contentData"/>
  </div>
</template>

<script>
export default {
  components: {
    SkeletonItem: {
      props: ['width','height'],
      template: `<div class="skeleton-item" :style="{width, height}"/>`
    }
  }
}
</script>

優(yōu)勢(shì):可復(fù)用組件,動(dòng)態(tài)控制顯示狀態(tài)

3.自動(dòng)化生成方案

// 使用vue-skeleton-webpack-plugin
const SkeletonWebpackPlugin = require('vue-skeleton-webpack-plugin');

module.exports = {
  configureWebpack: {
    plugins: [
      new SkeletonWebpackPlugin({
        webpackConfig: {
          entry: './src/skeleton.js'
        },
        minimize: true,
        quiet: true
      })
    ]
  }
}

特點(diǎn):通過路由匹配自動(dòng)生成對(duì)應(yīng)骨架屏

二、關(guān)鍵實(shí)現(xiàn)要點(diǎn)

1.視覺一致性原則

  • 占位元素需與真實(shí)內(nèi)容布局1:1對(duì)應(yīng)
  • 使用與UI風(fēng)格協(xié)調(diào)的漸變色系
  • 動(dòng)畫持續(xù)時(shí)間控制在1-1.5秒

2.性能優(yōu)化策略

  • 骨架屏代碼應(yīng)控制在5KB以內(nèi)
  • 避免使用圖片資源,純CSS實(shí)現(xiàn)
  • 與PWA的預(yù)緩存策略結(jié)合使用

3.狀態(tài)管理規(guī)范

// 鴻蒙APP中的狀態(tài)管理案例
Page({
  data: {
    loading: true,
    error: false,
    empty: false
  },
  onLoad() {
    fetchData().then(res => {
      this.setData({ 
        loading: false,
        list: res.data || []
      });
    }).catch(() => {
      this.setData({ error: true });
    });
  }
})

最佳實(shí)踐:需處理加載失敗/數(shù)據(jù)為空等邊界情況

到此這篇關(guān)于前端中骨架屏的三種運(yùn)用方式介紹的文章就介紹到這了,更多相關(guān)前端骨架屏運(yùn)用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java遇到微信小程序

    java遇到微信小程序 "支付驗(yàn)證簽名失敗" 問題解決

    這篇文章主要介紹了java遇到微信小程序 "支付驗(yàn)證簽名失敗" 問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 使用?JS?判斷用戶是否處于活躍狀態(tài)的案例詳解

    使用?JS?判斷用戶是否處于活躍狀態(tài)的案例詳解

    這篇文章主要介紹了如何使用?JS?判斷用戶是否處于活躍狀態(tài),案例演示了如何獲取用戶活躍狀態(tài),時(shí)間閾值定為5秒,超出該閾值沒有操作表示非活躍,否則屬于正在活躍中,需要的朋友可以參考下
    2024-05-05
  • 微信小程序?qū)崿F(xiàn)驗(yàn)證碼倒計(jì)時(shí)效果

    微信小程序?qū)崿F(xiàn)驗(yàn)證碼倒計(jì)時(shí)效果

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)驗(yàn)證碼倒計(jì)時(shí)效果,手機(jī)登錄、填手機(jī)號(hào)獲取驗(yàn)證碼,倒計(jì)時(shí)后重新獲取效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • layui table 參數(shù)設(shè)置方法

    layui table 參數(shù)設(shè)置方法

    今天小編就為大家分享一篇layui table 參數(shù)設(shè)置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • 一文帶你詳細(xì)拆解JavaScript中Promise的原理和真實(shí)應(yīng)用

    一文帶你詳細(xì)拆解JavaScript中Promise的原理和真實(shí)應(yīng)用

    本文從中文語義出發(fā),逐層深入到 .then 源碼、resolve 與 then 的聯(lián)動(dòng)機(jī)制、await 的編譯真相,最后用一道面試實(shí)戰(zhàn)題把所有知識(shí)串起來,讀完之后,Promise 對(duì)你來說不再是一個(gè)需要記憶的 API,而是一個(gè)可以用直覺推導(dǎo)的思維模型
    2026-03-03
  • 微信小程序從注冊(cè)賬號(hào)到上架(圖文詳解)

    微信小程序從注冊(cè)賬號(hào)到上架(圖文詳解)

    這篇文章主要介紹了微信小程序從注冊(cè)賬號(hào)到上架詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • javascript開發(fā)實(shí)現(xiàn)貪吃蛇游戲

    javascript開發(fā)實(shí)現(xiàn)貪吃蛇游戲

    這篇文章主要為大家詳細(xì)介紹了javascript開發(fā)實(shí)現(xiàn)貪吃蛇游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • 完美實(shí)現(xiàn)js選項(xiàng)卡切換效果(二)

    完美實(shí)現(xiàn)js選項(xiàng)卡切換效果(二)

    這篇文章主要為大家詳細(xì)介紹如何完美實(shí)現(xiàn)js選項(xiàng)卡切換效果,通過設(shè)置定時(shí)器實(shí)現(xiàn)延時(shí)0.5s切換選項(xiàng)卡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • JS實(shí)現(xiàn)勻加速與勻減速運(yùn)動(dòng)的方法示例

    JS實(shí)現(xiàn)勻加速與勻減速運(yùn)動(dòng)的方法示例

    這篇文章主要介紹了JS實(shí)現(xiàn)勻加速與勻減速運(yùn)動(dòng)的方法,涉及javascript結(jié)合時(shí)間函數(shù)與數(shù)學(xué)運(yùn)算動(dòng)態(tài)操作頁面元素樣式的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-09-09
  • javascript 面向?qū)ο骹unction詳解及實(shí)例代碼

    javascript 面向?qū)ο骹unction詳解及實(shí)例代碼

    這篇文章主要介紹了javascript 面向?qū)ο骹unction詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-02-02

最新評(píng)論

滨海县| 昂仁县| 府谷县| 漯河市| 越西县| 阳新县| 扶沟县| 德惠市| 宝坻区| 元谋县| 青岛市| 灵台县| 璧山县| 黄骅市| 英德市| 隆林| 桓台县| 新晃| 牙克石市| 吉木乃县| 临澧县| 米易县| 旬邑县| 甘德县| 临汾市| 招远市| 分宜县| 夏邑县| 全南县| 山东省| 扎囊县| 日喀则市| 武清区| 荣昌县| 寻乌县| 金山区| 石城县| 红桥区| 嘉鱼县| 南和县| 綦江县|