搜索框是瀏覽器中交互最為頻繁的控件之一纺弊,因此如何設(shè)計一個搜索框變得極為重要凑阶。用戶輸入搜索關(guān)鍵字,瀏覽器會提供命中關(guān)鍵字的搜索結(jié)果。大多數(shù)瀏覽器的行為都差不多姑裂,如下圖所示:
上圖依次是:百度瀏覽器,QQ瀏覽器梦皮,UC瀏覽器炭分,夸克瀏覽器。一樣的關(guān)鍵字剑肯,不一樣的數(shù)據(jù)和排序捧毛。從圖中可以看出有如下功能:
- URL 自動補全
- 歷史網(wǎng)址提示
- 常用網(wǎng)址提示
- 關(guān)鍵字提示
這么多功能最終都是為了讓用戶以最快最舒服的方式找到想要的內(nèi)容。搜索框看似簡單,其實是一個非常復(fù)雜的交互控件呀忧。說白了就一句話师痕,如何根據(jù)用戶使用習(xí)慣對數(shù)據(jù)進行有效的排序篩選。
- 數(shù)據(jù)
- 排序篩選
- 用戶習(xí)慣
根據(jù)這三點來設(shè)計瀏覽器的搜索框就是今天的主題而账。
數(shù)據(jù)
數(shù)據(jù)的來源可以是:
- 書簽
- 導(dǎo)航
- 瀏覽歷史
- 框計算 (服務(wù)器支持)
- etc
數(shù)據(jù)源不是越多越好胰坟, 數(shù)據(jù)源多樣化會導(dǎo)致數(shù)據(jù)膨脹,最終會增加用戶使用成本泞辐。 那么笔横,如何對數(shù)據(jù)進行有效的排序和篩選變得非常重要。
數(shù)據(jù)排序篩選
需要在有限的顯示區(qū)域里面咐吼,展示有效的數(shù)據(jù)吹缔。排序根據(jù)用戶權(quán)重系數(shù)降序排列,
首先對每一種數(shù)據(jù)源配置權(quán)重系數(shù)w1 锯茄,然后對同一數(shù)據(jù)源的每一條數(shù)據(jù)配置權(quán)重系數(shù)w2厢塘。同一數(shù)據(jù)源的權(quán)重按一定的算法衰減,保證所有數(shù)據(jù)源重要的數(shù)據(jù)都可以在有限的顯示區(qū)間顯示 肌幽。
一條數(shù)據(jù)的權(quán)重最終為:
W = w1 * w2 * f(index)
用戶習(xí)慣
通過學(xué)習(xí)用戶行為高效的配置資源晚碾,提高用戶的瀏覽體驗。這里不得不說Chrome ,一款偉大的瀏覽器喂急。通過參照 Chrome 的實現(xiàn)方法格嘁,實現(xiàn)根據(jù)用戶行為有效配置資源。用戶行為的學(xué)習(xí)煮岁,也會影響到數(shù)據(jù)的排序讥蔽,使排序更加智能化涣易。