(Pic from: shimivn.blogspot.com)「回到上方」的按鈕是很常見的網頁設計,且 code 不難寫。那麼特地撰寫本文的目的為何呢?其實主要是拜讀了 Bin Ye 的「改善 Google Blogger 返回頂部按鈕的使用體驗」(連結已失效)覺得很有道理,因此雖然未使用這個按鈕(已經有「置頂導覽列選單」了),不過這個友善的使用者體驗設計,值得把他做出來,讓有需要的站長自取,因為本站的作品基本上也是朝使用者體驗的方向在前進。
一、符合使用者體驗的設計要點
以下所提的各種效果,可先請參考這個 DEMO 網頁對照:
1. 按鈕的位置
「回到頂端」按鈕很常見的位置放在頁面的右下角,不過根據 Bin Ye 原文及留言,使用者視線的焦點大致落在螢幕中央的水平線(也就是 1/2 處),而滑鼠指標大致會落在螢幕中央約 2/3 的區域。
經觀察自己實際操作滑鼠的模式,的確不自覺會將鼠標落在畫面中央水平線稍微下面一點之處,那麼「回到頂端」按鈕如果放在螢幕 1/2 ~ 2/3 這個高度區間,可減少滑鼠移動的距離,對於使用者而言將是最方便的操作。
2. 透明度
這個按鈕可能會遮住一些文字,因此有必要加入透明度的設計,當滑鼠經過按鈕時再取消透明。
3. 出現時機
畫面尚未捲動時沒必要回到頂端,因此用 jqeury 監測捲動事件,當畫面開始捲動後才出現按鈕。
4. 滑動效果
直接跳到頂端稍嫌粗魯,用 jquery 內建的動畫效果,可以達到簡單的滑動效果。
二、安裝程式碼
在修改範本之前,如果第一次安裝本站工具的讀者,建議先閱讀「備份範本的訣竅」系列文章。
1. 以 Blogger 的操作為例,到後台「範本」→「編輯 HTML」,如果範本裡已經安裝過 jqeury 的話(需至少 1.7 以上的版本),就不必執行這個步驟(可搜尋看看有沒有 "jquery" 的字串);如果沒安裝過 jquery,請搜尋
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js'></script>
2. 接著請搜尋
3. 如果覺得預設效果就很好了,那麼請直接存檔即可;想要修改參數的話,請依以上程式碼行號參考以下說明:
G:想使用自訂圖案,請置換藍字圖片網址。
H:紅字 "1/2" 代表按鈕無論螢幕在任何情況、解析度下,都會出現在約 1/2 的高度,建議填入 1/2 ~ 2/3 之間的數值。
I:按鈕距離螢幕右邊界的 px 值
J:按鈕的透明度可填入 0 ~ 1 的數字,0 代表完全透明,1 代表不透明。
K:可自訂捲動的速度,綠字 500 代表以 0.5 秒的速度捲到頂端,若填入 1000 代表 1 秒。
E:title 裡面的中文字串可改為自訂的提醒文字
三、小結
如果對 js 熟悉的話,本文的程式碼還可以有非常多的應用,例如自行修改加入其他按鈕,可快速跳轉到留言區、自訂錨點的功能,或加入幾個常用的社交分享按鈕等等。由於 WFU BLOG 尚未考慮使用這些功能,因此要請自行研究了。
更多 Go Top 按鈕語法:
我改好了,原本我是裝隔壁棚的back to top語法,但是當我放大瀏覽比例,箭頭壓在側欄連結上就會失效,所以我改這組解決問題了,謝謝!
回覆刪除<8986892818816158933>(以上內容請勿刪除,從括號之後開始留言)
回覆刪除嘻嘻,真的耶!我現在改的語法出處都是wayne這裡耶!即便之前有用別棚的語法,但找到可以用的我都改成wayne的了!我是前線實驗場,哈哈!
作者已經移除這則留言。
回覆刪除<8611306874550544387>(以上內容請勿刪除,從括號之後開始留言)
回覆刪除想要同時放上下兩個鈕是有可能的嗎?因為我放兩組語法上去,原本的就不見了。
<8611306874550544387>(以上內容請勿刪除,從括號之後開始留言)
回覆刪除太感謝W大了 不過也跟下面同問 如果上下並存可以嗎? 哈哈 謝謝W大!!
<1012118829121381514>(以上內容請勿刪除,從括號之後開始留言)
回覆刪除謝謝W大 另外請教這個鈕是不是IE會沒作用...
<1012118829121381514>(以上內容請勿刪除,從括號之後開始留言)
回覆刪除另外還想請問這個地方想加底色要如何加呢?
[img]https://googledrive.com/host/0B4MXs1jb3Y99YXdNZnRYaXd2M2s/001.jpg[/img]
<987570635242824730>(以上內容請勿刪除,從括號之後開始留言)
回覆刪除ok,修改完畢,ie可以正常運作了,也是因為我今天才有機會知道原本的語法ie真的不能動~~~
請問一下,有辦法添加什麼語法讓這組功能只出現在網路版而行動版不要出現嗎?謝謝!
回覆刪除可以請問一下 為何無限捲頁跟back to top的功能無法同時顯示呢?
回覆刪除無限捲頁功能是參閱http://pulipuli.blogspot.tw/2011/06/blogger-infinite-scroll.html?showComment=1398331255551#c3173013020852896946
XDD 版大 我瞎貓碰上死耗子
回覆刪除後來仔細看了語法發現jquery/1.8.2後面的數字不同
就嘗試把數字改一樣的就都出現啦
謝謝大大的分享^___^
回覆刪除如果這個一樣要套用到自適應範本,在多少寬度以下會消失,要怎麼設定呢?
回覆刪除<5556000047762828140>(以上內容請勿刪除,從括號之後開始留言)
回覆刪除我怕在行動面板上會擋到文章嘛 =3=
我很吹毛求疵
請問一下Wayne大,如果希望只有在往下滑動頁面或是往上滑動頁面才顯示按鈕,我需要如何修改?先謝謝你喔!
回覆刪除因為我的想法是想說能不能安裝兩個語法,當使用者往下滑動時顯示向上箭頭,往上滑動時顯示向下箭頭,要置頂或是到最底下留言板,就看怎麼配置動作要怎麼搭配顯示置頂或到最底下,能讓使用者更直覺!(不知這樣執行行不行的通,,,)呵呵!剛好昨晚看到這個網頁http://www.ettoday.net/news/20140826/393758.htm?from=fb_et_news突然想到有安裝你的這篇,想說請教你一下!謝謝你的回覆喔!
回覆刪除呵呵歹勢歹勢!謝謝你喔!
回覆刪除你好,我發現我安裝這個功能,jquery會跟我原有的prototype相沖,我的導覽列會點不出來,請問這有辦法解決嗎? 我的部落格http://www.acgxi.tk/
回覆刪除其實我對您的"↑TOP"鈕比較有興趣,這個有沒有教學?XD
謝謝
好用耶!謝謝分享!
回覆刪除請問是否能設定為 每次重新整理都會跟換不同的圖案
回覆刪除像是這個網站 http://www.comicat.org/discuss-1.html
他每次整理 右下角的TOP圖案都會改變,不知道該如何才能出現這樣的效果呢??
回報一下:
回覆刪除在觀看這篇文章的DEMO網頁時,按下第一次TOP之後,無法正常往下滑動閱讀~(使用chrome閱讀)
不知道你那邊是否正常?
請問痞客可以套用這個語法嗎?
回覆刪除pixnet語法似乎不一樣(pixne 是css為主的樣子),個人覺得是不能套用。
刪除這邊教學都是blogger為主。
不知道跟模板有沒有關聯,我在 body 標籤結尾的前一行加入您的那段程式碼,結果有出現回到最上層的箭頭,但不能作用。觀察之後發現跟您的 demo 相比,不知為何它跑到其他兩段 script 的前方了...繼續觀察看看要怎麼處理 QQ
回覆刪除我的是官方 RWD 範本...再想想怎麼辦好了,感謝回覆QQ
刪除測一測忽然就過了...!萬萬沒想到,非常謝謝您!
刪除