頁面加載功能設(shè)計(jì)總結(jié)

12 評(píng)論 15554 瀏覽 168 收藏 13 分鐘

去年我寫過一篇文章返回功能應(yīng)該怎么設(shè)計(jì),今年反其道而行,來聊聊產(chǎn)品中的“前進(jìn)”功能。

關(guān)于“前進(jìn)”,我們很難給出一個(gè)準(zhǔn)確的定義。狹義上的“前進(jìn)”指的是用戶觸發(fā)某個(gè)交互動(dòng)作進(jìn)入一個(gè)新頁面。如何在進(jìn)入一個(gè)新頁面的過程中給予用戶良好的體驗(yàn)?zāi)兀?/p>

我們可以從以下三個(gè)方面進(jìn)行分析:指示器、方向順序。

指示器

用戶每次進(jìn)入一個(gè)新頁面都要從后臺(tái)請(qǐng)求數(shù)據(jù),數(shù)據(jù)返回到頁面完成渲染,內(nèi)容才會(huì)展示出來。這個(gè)過程需要時(shí)間,需要用戶去等待。指示器的作用就是填補(bǔ)用戶等待的時(shí)間,減少用戶因等待而產(chǎn)生的焦慮情緒。

1. 告訴用戶系統(tǒng)當(dāng)前的狀態(tài)

防止用戶焦慮首先我們要告訴用戶頁面加載的過程正在進(jìn)行。如果我們不提示用戶,那么用戶看到的就是一塵不變的白屏。就像下圖的酷我音樂一樣,用戶點(diǎn)擊進(jìn)入“直播頁”,沒有任何元素提示用戶頁面內(nèi)容正在加載中。一旦你不知道自己所等待的流程是否正在進(jìn)行,那么等待就是漫無目的的,焦慮情緒也會(huì)產(chǎn)生。

作為對(duì)比我們可以看一下飛豬的處理方式,這里使用了一個(gè)loading動(dòng)效彈框告訴了用戶頁面正在加載中。及時(shí)告訴用戶系統(tǒng)當(dāng)前的狀態(tài)可以很好的起到安撫用戶的作用。

2. 品牌基因植入

指示器的樣式并沒有特殊的要求,雖然大部分的產(chǎn)品使用的都是上面所提到的loading彈框,但是指示器樣式和載體并不只限于此。我們可以選擇進(jìn)度條,也可以將loading的動(dòng)效放到標(biāo)題欄。

如果我們更進(jìn)一步,可以將品牌基因植入指示器的設(shè)計(jì)中。還是以飛豬的loading動(dòng)效為例,這里采用了飛豬logo的形狀。當(dāng)然選擇傳統(tǒng)的菊花動(dòng)效同樣可以,但是這個(gè)無法體現(xiàn)產(chǎn)品之間的差異性。

指示器在產(chǎn)品中出現(xiàn)的場(chǎng)景會(huì)很多,我們可以花點(diǎn)心思,做的盡量精致一點(diǎn)。很多產(chǎn)品都選擇通過一些有趣的動(dòng)效分散用戶在等待過程中的注意力。

方向

頁面在水平方向上跳轉(zhuǎn)目前來說依然是主流,分為左右平移覆蓋平移兩種。

當(dāng)然不管是哪種,“從右到左”的頁面跳轉(zhuǎn)方式大行其道的原因是它這符合用戶對(duì)于一個(gè)線性操作流程的的直觀感受。

目前也有很多產(chǎn)品選擇在豎直方向上加載頁面,以從下往上居多。那么豎直方向和水平方向的區(qū)別在哪呢?這個(gè)在上面也提到過,水平方向的頁面流符合用戶對(duì)于操作流程的直觀感受。例如,在購買火車票流程,用戶的主流程是:選擇車次-選擇座位等級(jí)-填寫訂單-付款-訂票結(jié)果。對(duì)于這樣的主流程,我們選擇從左到右的頁面流,而新增乘車人信息我們可以看成是這個(gè)主流程中的一個(gè)支流,從底部彈出更加合適。

交互設(shè)計(jì)一定要符合用戶的心理認(rèn)知。如果這個(gè)頁面從底部彈出,會(huì)給用戶一個(gè)暗示:這個(gè)頁面是底部彈出的,那么我下拉是否就可以關(guān)閉這個(gè)頁面呢?還是以“新增乘車人”頁面為例,這里還是秉持著iOS右滑返回的機(jī)制。這個(gè)就造成了一個(gè)“手指向右,頁面向下”的奇葩交互樣式,明顯有悖于用戶的認(rèn)知。當(dāng)然也有處理很好的,可以看下網(wǎng)易云音樂歌曲評(píng)論頁,點(diǎn)擊返回按鈕頁面是向下關(guān)閉的,手指右滑頁面是右滑關(guān)閉的,做了區(qū)分

這種處理方式也給我們帶來了啟發(fā)。例如,微信中用戶點(diǎn)擊浮窗,文章頁面是擴(kuò)展開來的。那么我們可以腦洞一下,用戶雙指捏合的手勢(shì)是否可以關(guān)閉文章頁?

順序

用戶觸發(fā)了某個(gè)交互動(dòng)作進(jìn)入一個(gè)新頁面,然后頁面和后臺(tái)開始進(jìn)行數(shù)據(jù)傳輸,數(shù)據(jù)傳輸完成后在頁面渲染。這是用戶進(jìn)入一個(gè)新頁面所經(jīng)歷的幾個(gè)重要階段,如下圖所示,這里我將其分成了4個(gè)階段。接下來我們從階段1開始梳理頁面加載過程的每一個(gè)步驟,力圖發(fā)掘可以優(yōu)化的點(diǎn)。

1)執(zhí)行操作

從用戶的角度來看,當(dāng)他執(zhí)行完操作1,后面的步驟就跟他沒有關(guān)系了。那么在頁面渲染完成前,我們應(yīng)該給用戶展示一個(gè)什么樣的頁面呢?

上面看到的幾款產(chǎn)品,他們的處理方式簡單粗暴——白屏。這對(duì)用戶來說,不是一個(gè)友好的體驗(yàn)。如果你的頁面布局樣式相對(duì)固定,可以考慮先給用戶展示頁面框架,然后再展示具體的內(nèi)容,這種加載機(jī)制就是占位符,又可以稱之為“骨架屏”。

與徹底的白屏相比,先給用戶展示頁面框架,用戶在頁面數(shù)據(jù)沒有加載完成的情況下也可以了解頁面的大致結(jié)構(gòu)。此外用戶一進(jìn)入這個(gè)頁面,發(fā)現(xiàn)這個(gè)頁面不是空蕩蕩的,它已經(jīng)有東西了,會(huì)覺得頁面已經(jīng)加載出來,從而產(chǎn)生一種“零等待”的錯(cuò)覺,體驗(yàn)更加流暢。

2)先文字,后圖片

一個(gè)頁面的內(nèi)容量是很大的,如果我們獲取完所有的信息才在客戶端渲染,所耗費(fèi)的時(shí)間是很長的。因此為了縮短用戶的等待時(shí)間,我們可以考慮先展示一些網(wǎng)絡(luò)資源較小的內(nèi)容。例如,先加載文字,再加載圖片。

我們都知道5G時(shí)代即將到來,信息傳輸?shù)乃俣却蟠蠹涌臁J遣皇且馕吨覀儾恍枰紤]加載順序了呢?當(dāng)然不是!

將信息展示給用戶只是界面設(shè)計(jì)的最基本要求,我們的最終目的是幫助用戶理解這些信息。一個(gè)頁面的信息量是很大的,網(wǎng)速的提升可以做到讓頁面立馬加載完成,但是一股腦的把所有信息展示給用戶是否合理?

分步驟地給用戶展示信息,讓用戶更容易消化可能會(huì)更合適。例如,用戶要查看跑步路線圖,此時(shí)用戶的注意力必然都在不斷生成的跑步路線上,這個(gè)時(shí)候其余的內(nèi)容可以延后展示,避免造成干擾。

3)預(yù)加載

用戶必須要進(jìn)入這個(gè)頁面才可以請(qǐng)求數(shù)據(jù)嗎?可不可以事先加載好頁面信息,這樣用戶進(jìn)來就不需要加載了。這種提前加載好頁面內(nèi)容的機(jī)制就是預(yù)加載。網(wǎng)易新聞中,斷網(wǎng)依然可以查看新聞,即使這條新聞你從來沒有打開過。

不止是頁面

在文章最開頭我說的是:狹義上的“前進(jìn)”指的是用戶觸發(fā)某個(gè)交互動(dòng)作進(jìn)入一個(gè)新頁面。為什么強(qiáng)調(diào)是“狹義”,因?yàn)橛脩糁灰|發(fā)某個(gè)交互動(dòng)作完成狀態(tài)的遷躍,我們都可以認(rèn)為是“前進(jìn)”,只不過我們習(xí)慣于使用一個(gè)新頁面來表現(xiàn)新狀態(tài)。當(dāng)然現(xiàn)在我們學(xué)會(huì)使用彈框了,這是一個(gè)進(jìn)步。我們添加商品到了購物車,不需要進(jìn)入一個(gè)“添加成功”結(jié)果頁,直接一個(gè)toast就可以了。

但彈框是最終答案嗎?我們的最終的目的是為了讓用戶感知系統(tǒng)狀態(tài)的變更,而用戶與系統(tǒng)交互的觸點(diǎn)又是一個(gè)個(gè)操作對(duì)象,為什么不直接通過改變操作對(duì)象的樣式來完成信息的傳達(dá)呢?還是添加商品到購物車的操作?

這里通過動(dòng)效演示了這個(gè)過程,不用任何文字,用戶就能明白“商品已經(jīng)添加到購物車”這個(gè)事實(shí),并且提示了用戶購物車的位置,信息的傳達(dá)更具有指向型。

總結(jié)

以上就是我對(duì)頁面加載方式的簡單分析和總結(jié),如果你有其他的意見或看法歡迎留言討論。

最近我的新書《爭(zhēng)論點(diǎn):用戶體驗(yàn)設(shè)計(jì)師的交互指南》正在熱銷中,期待各位的支持。

#專欄作家#

王M爭(zhēng)(微信公眾號(hào):王M爭(zhēng)),人人都是經(jīng)理專欄作家,資深互聯(lián)網(wǎng)人。

本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自 Unsplash,基于 CC0 協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 我一個(gè)數(shù)據(jù)分析師看的津津有味,很贊

    來自廣東 回復(fù)
  2. 贊,加載的先后順序,從時(shí)間線上對(duì)內(nèi)容進(jìn)行分層,提高用戶的認(rèn)知效率和體驗(yàn)

    來自廣東 回復(fù)
  3. 弱弱的問一下:突然沒有網(wǎng)絡(luò),頁面加載多久顯示網(wǎng)絡(luò)無連接

    來自江蘇 回復(fù)
  4. 太棒啦,原來每一個(gè)看似不起眼的交互細(xì)節(jié)都是經(jīng)過精心的考量和設(shè)計(jì)的

    來自江蘇 回復(fù)
  5. 先加載什么后加載什么也是可以通過代碼來控制嘛?

    回復(fù)
  6. 最后一張動(dòng)圖,拖入購物車后,購物車的數(shù)字沒有變化哦

    來自廣東 回復(fù)
    1. 變化了吧。只是GIF圖進(jìn)入了第N+1次循環(huán)

      來自江蘇 回復(fù)
    2. 噢對(duì) GIF動(dòng)圖循環(huán)太快沒看清楚

      來自廣東 回復(fù)
  7. 大藍(lán)鯨

    來自江蘇 回復(fù)
  8. 留爪

    回復(fù)
    1. 回復(fù)
  9. 寫的太贊了 很全面。

    來自上海 回復(fù)
专题
76522人已学习25篇文章
APP设计是一位优秀产品经理的基本功。
专题
15378人已学习12篇文章
服务设计在流程性和系统性的问题解决方面提供很好的思路和方法。本专题的文章分享了如何做好服务设计。
专题
12283人已学习12篇文章
构建UGC社区是很多社区平台的必经之路,它能助力平台内容生产,为社区提供活水源泉。本专题的文章分享了如何构建UGC社区。
专题
16242人已学习11篇文章
本专题分享了算法相关的知识,汇总了算法的基础知识和进阶知识。
专题
17371人已学习18篇文章
本专题的文章分享了车载HMI设计指南,包括HMI的交互、设计、功能等方面的知识分享。
专题
12646人已学习12篇文章
运营分很多类,流量运营、用户运营、内容运营…每一个环节都有特别关注的数据和指标。本专题的文章分享了互联网运营,应该分析哪些数据和指标。