人人都是產(chǎn)品經(jīng)理【起點(diǎn)學(xué)院】,BAT實(shí)戰(zhàn)派產(chǎn)品總監(jiān)手把手系統(tǒng)帶你學(xué)產(chǎn)品、學(xué)運(yùn)營(yíng)。
產(chǎn)品設(shè)計(jì)時(shí)細(xì)節(jié)是產(chǎn)品經(jīng)理最頭疼的問題,一個(gè)button,一個(gè)鏈接都要考慮太多的細(xì)節(jié)問題。作者整理了常見的一些功能設(shè)計(jì)問題,一篇文章看懂這些功能設(shè)計(jì)。來學(xué)習(xí)吧。
鏈接也稱為超鏈接,所謂的超鏈接是指從一個(gè)網(wǎng)頁指向一個(gè)目標(biāo)的連接關(guān)系,這個(gè)目標(biāo)可以是另一個(gè)網(wǎng)頁,也可以是相同網(wǎng)頁上的不同位置,還可以是一個(gè)圖片,一個(gè)電子郵件地址,一個(gè)文件,甚至是一個(gè)應(yīng)用程序。而在一個(gè)網(wǎng)頁中用來超鏈接的對(duì)象,可以是一段文本或者是一個(gè)圖片。當(dāng)瀏覽者單擊已經(jīng)鏈接的文字或圖片后,鏈接目標(biāo)將顯示在瀏覽器上,并且根據(jù)目標(biāo)的類型來打開或運(yùn)行。
鏈接可以是一個(gè)字或是一段字這樣的文本,也可以是一個(gè)按鈕,一張圖片,當(dāng)你點(diǎn)擊后跳轉(zhuǎn)到另一個(gè)目標(biāo),當(dāng)你把鼠標(biāo)指針移到某個(gè)鏈接時(shí)會(huì)變成一個(gè)小手,當(dāng)然在手機(jī)上沒有這一特點(diǎn)。
文本樣式的鏈接一般在搜索引擎的網(wǎng)站呈現(xiàn)藍(lán)色字樣,大多會(huì)在下面加上下劃線以便識(shí)別,不過現(xiàn)如今考慮到不影響文本的可讀性與用戶體驗(yàn),逐漸取消了下劃線。而在一些別的網(wǎng)站考慮到界面設(shè)計(jì)風(fēng)格各方面的因素而不用藍(lán)色。
谷歌的文本鏈接是藍(lán)色,沒有下劃線
百度的文本鏈接也是藍(lán)色,關(guān)鍵詞是紅色,有下劃線
而京東的文本鏈接有灰色,有白色,有黑色
按鈕樣式的鏈接比文本樣式的更容易識(shí)別,每一個(gè)按鈕都是一樣鏈接。
按鈕樣式鏈接
圖片樣式的鏈接可以是單獨(dú)的一張圖片,也可以是文字與按鈕一起組成一張圖片,只是鼠標(biāo)指針掃過圖片的任何一個(gè)部位都會(huì)變成小手。
如桌面彈出這種游戲小窗口的圖片式鏈接
由文字/圖/按鈕樣式一起構(gòu)成的一張圖片式按鈕,鼠標(biāo)可以點(diǎn)擊圖中任何一部位
鏈接打開的方式有三種:第一種是在當(dāng)前頁面刷新跳轉(zhuǎn),國外的網(wǎng)站大多是這樣的打開式;第二種是在新標(biāo)簽頁面打開鏈接,國內(nèi)大多采用這種;第三種是提示用APP打開。當(dāng)然現(xiàn)在出現(xiàn)了一種新的打開方式,那就是二維碼掃描。
提示用美拍APP打開
按照連接路徑的不同,網(wǎng)頁中超鏈接一般分為以下3種類型:內(nèi)部鏈接,錨點(diǎn)鏈接和外部鏈接。
鏈接還可以分為動(dòng)態(tài)鏈接和靜態(tài)鏈接。動(dòng)態(tài)超鏈接指的是可以通過改變HTML代碼來實(shí)現(xiàn)動(dòng)態(tài)變化的鏈接,例如我們可以實(shí)現(xiàn)將鼠標(biāo)移動(dòng)到某個(gè)文字鏈接上,文字就會(huì)象動(dòng)畫一樣動(dòng)起來或改變顏色的效果,也可以實(shí)現(xiàn)鼠標(biāo)移到圖片上圖片就產(chǎn)生反色或朦朧等等的效果。而靜態(tài)鏈接,顧名思義,就是沒有動(dòng)態(tài)效果的鏈接。
與外部鏈接(即反向鏈接)相反,內(nèi)部鏈接是指同一網(wǎng)站域名下的內(nèi)容頁面之間互相鏈接。如頻道、欄目、終極內(nèi)容頁之間的鏈接,乃至站內(nèi)關(guān)鍵詞之間的Tag鏈接都可以歸類為內(nèi)部鏈接,因此內(nèi)部鏈接我們也可以稱之為站內(nèi)鏈接,對(duì)內(nèi)部鏈接的優(yōu)化其實(shí)就是對(duì)網(wǎng)站的站內(nèi)鏈接的優(yōu)化。
HTML中的鏈接,正確的說法應(yīng)該稱作"錨點(diǎn)",它命名錨點(diǎn)鏈接(也叫書簽鏈接)常常用于那些內(nèi)容龐大繁瑣的網(wǎng)頁,通過點(diǎn)擊命名錨點(diǎn),不僅讓我們能指向文檔,還能指向頁面里的特定段落,更能當(dāng)作"精準(zhǔn)鏈接"的便利工具,讓鏈接對(duì)象接近焦點(diǎn)。便于瀏覽者查看網(wǎng)頁內(nèi)容。類似于我們閱讀書籍時(shí)的目錄頁碼或章回提示。在需要指定到頁面的特定部分時(shí),標(biāo)記錨點(diǎn)是最佳的方法。
外部鏈接,又常被稱為:“反向鏈接”或“導(dǎo)入鏈接”,是指通過其他網(wǎng)站鏈接到你的網(wǎng)站的鏈接。
外部鏈接指的是針對(duì)搜索引擎,與其它站點(diǎn)所做的友情鏈接。高質(zhì)量的外部鏈接指:和你的網(wǎng)站建立鏈接的網(wǎng)站知名度高,訪問量大,同時(shí)相對(duì)的外部鏈接較少,有助于快速提升你的網(wǎng)站知名度和排名的其他網(wǎng)站的友情鏈接。
如果按照使用對(duì)象的不同,網(wǎng)頁中的鏈接又可以分為:文本超鏈接,圖像超鏈接,E-mail鏈接,錨點(diǎn)鏈接,多媒體文件鏈接,空鏈接等。
鏈接是一種對(duì)象,它以特殊編碼的文本或圖形的形式來實(shí)現(xiàn)鏈接,如果單擊該鏈接,則相當(dāng)于指示瀏覽器移至同一網(wǎng)頁內(nèi)的某個(gè)位置,或打開一個(gè)新的網(wǎng)頁,或打開某一個(gè)新的WWW網(wǎng)站中的網(wǎng)頁。
鏈接在交互上一般會(huì)呈現(xiàn)4種狀態(tài),即默認(rèn)狀態(tài)/懸停時(shí)狀態(tài)/點(diǎn)擊時(shí)狀態(tài)/點(diǎn)擊后狀態(tài)。比如谷哥網(wǎng)站的交互體驗(yàn)。如下圖:
點(diǎn)擊前
懸停時(shí),下面浮現(xiàn)半透明線條
點(diǎn)擊時(shí),有波紋暈開的動(dòng)態(tài)效果
點(diǎn)擊后,下面線條粗
有時(shí)候是3種狀態(tài),比如百度網(wǎng)和知乎應(yīng)用:
默認(rèn)狀態(tài)
點(diǎn)擊時(shí)鏈接變紅
點(diǎn)擊后鏈接變成紫色
IOS系統(tǒng)知乎應(yīng)用的3種狀態(tài),而在Android系統(tǒng)沒有用力點(diǎn)擊這一狀態(tài)。
默認(rèn)狀態(tài)
點(diǎn)擊狀態(tài)
用力點(diǎn)擊會(huì)彈出預(yù)覽小窗口
有些時(shí)候只有2種狀態(tài),如下圖谷歌網(wǎng):
默認(rèn)和點(diǎn)擊后狀態(tài)一樣
鼠標(biāo)懸停時(shí)出現(xiàn)下劃線
默認(rèn)狀態(tài)
點(diǎn)擊時(shí)
而有時(shí)候比如在APP里有時(shí)候就一直只有一種狀態(tài),也可以稱靜態(tài)鏈接,之前的可以稱之為動(dòng)態(tài)鏈接。在不同的使用場(chǎng)景會(huì)因?yàn)楫?dāng)時(shí)的情況選擇最合適的交互體驗(yàn)設(shè)計(jì)。有的情況下還會(huì)加上點(diǎn)擊的音效,使用戶體驗(yàn)更暢快,這在移動(dòng)端用的使用情況多一些。
總之鏈接是網(wǎng)頁不可缺少的構(gòu)成部分,每一個(gè)鏈接的呈現(xiàn)都是經(jīng)過深思熟慮的。
作者:潘瑤瓊(簡(jiǎn)書作者)
本文由 @潘瑤瓊 授權(quán)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。
端功能問題系列文章,點(diǎn)擊上方合集↑
序言
大家好,我是大澈!
本文約2100+字,整篇閱讀大約需要3分鐘。
本文主要內(nèi)容分三部分,如果您只需要解決問題,請(qǐng)閱讀第一、二部分即可。如果您有更多時(shí)間,進(jìn)一步學(xué)習(xí)問題相關(guān)知識(shí)點(diǎn),請(qǐng)閱讀至第三部分。
感謝關(guān)注微信公眾號(hào):“程序員大澈”,然后加入問答群,從此讓解決問題的你不再孤單!
方式一、pdf文件理論上可以在瀏覽器直接打開預(yù)覽但是需要打開新頁面。在僅僅是預(yù)覽pdf文件且UI要求不高的情況下可以直接通過a標(biāo)簽href屬性實(shí)現(xiàn)預(yù)覽
<a href="文檔地址"></a>
方式二、通過jquery插件jquery.media.js實(shí)現(xiàn) 這個(gè)插件可以實(shí)現(xiàn)pdf預(yù)覽功能(包括其他各種媒體文件)但是對(duì)word等類型的文件無能為力。 實(shí)現(xiàn)方式: js代碼:
<script type="text/javascript" src="jquery-1.7.1.min.js"></script> <script type="text/javascript" src="jquery.media.js"></script> 復(fù)制代碼
html結(jié)構(gòu):
<body> <div id="handout_wrap_inner"></div> </body> 復(fù)制代碼
調(diào)用方式:
<script type="text/javascript"> $('#handout_wrap_inner').media({ width: '100%', height: '100%', autoplay: true, src:'http://storage.xuetangx.com/public_assets/xuetangx/PDF/PlayerAPI_v1.0.6.pdf', }); </script> 復(fù)制代碼
方式三、直接通過頁面內(nèi)嵌iframe
$("<iframe src='"+ this.previewUrl +"' width='100%' height='362px' frameborder='1'>").appendTo($(".video-handouts-preview")); 復(fù)制代碼
此外還可以在iframe標(biāo)簽之間提供一個(gè)提示類似這樣
<iframe :src="previewUrl" width="100%" height="100%"> This browser does not support PDFs. Please download the PDF to view it: <a :href="previewUrl">Download PDF</a> </iframe> 復(fù)制代碼
方式四、通過標(biāo)簽嵌入內(nèi)容
<embed :src="previewUrl" type="application/pdf" width="100%" height="100%">
此標(biāo)簽h5特性中包含四個(gè)屬性:高、寬、類型、預(yù)覽文件src! 與< iframe > < / iframe > 不同,這個(gè)標(biāo)簽是自閉合的的,也就是說如果瀏覽器不支持PDF的嵌入,那么這個(gè)標(biāo)簽的內(nèi)容什么都看不到!
方式五、標(biāo)簽和iframe使用差別較小
<object :src="previewUrl" width="100%" height="100%"> This browser does not support PDFs. Please download the PDF to view it: <a :href="previewUrl">Download PDF</a> </object> 復(fù)制代碼
除方式二以外其他都是直接通過標(biāo)簽將內(nèi)容引入頁面實(shí)現(xiàn)預(yù)覽
方式六、PDFObject
PDFObject實(shí)際上也是通過標(biāo)簽實(shí)現(xiàn)的直接上代碼
<!DOCTYPE html> <html> <head> <title>Show PDF</title> <meta charset="utf-8" /> <script type="text/javascript" src='pdfobject.min.js'></script> <style type="text/css"> html,body,#pdf_viewer{ width: 100%; height: 100%; margin: 0; padding: 0; } </style> </head> <body> <div id="pdf_viewer"></div> </body> <script type="text/javascript"> if(PDFObject.supportsPDFs){ // PDF嵌入到網(wǎng)頁 PDFObject.embed("index.pdf", "#pdf_viewer" ); } else { location.href = "/canvas"; } </script> </html>
還可以通過以下代碼進(jìn)行判斷是否支持PDFObject預(yù)覽
if(PDFObject.supportsPDFs){ console.log("Yay, this browser supports inline PDFs."); } else { console.log("Boo, inline PDFs are not supported by this browser"); } 復(fù)制代碼
方式七、PDF.js
PDF.js可以實(shí)現(xiàn)在html下直接瀏覽pdf文檔,是一款開源的pdf文檔讀取解析插件,非常強(qiáng)大,能將PDF文件渲染成Canvas。PDF.js主要包含兩個(gè)庫文件,一個(gè)pdf.js和一個(gè)pdf.worker.js,一個(gè)負(fù)責(zé)API解析,一個(gè)負(fù)責(zé)核心解析。
word、ppt、xls文件實(shí)現(xiàn)在線預(yù)覽的方式比較簡(jiǎn)單可以直接通過調(diào)用微軟的在線預(yù)覽功能實(shí)現(xiàn) (預(yù)覽前提:資源必須是公共可訪問的)
<iframe src='https://view.officeapps.live.com/op/view.aspx?src=http://storage.xuetangx.com/public_assets/xuetangx/PDF/1.xls' width='100%' height='100%' frameborder='1'> </iframe> 復(fù)制代碼
src就是要實(shí)現(xiàn)預(yù)覽的文件地址 具體文檔看這微軟接口文檔
補(bǔ)充:google的文檔在線預(yù)覽實(shí)現(xiàn)同微軟(資源必須是公共可訪問的)
<iframe :src="'https://docs.google.com/viewer?url="fileurl"></iframe> 復(fù)制代碼
3、word文件
XDOC可以實(shí)現(xiàn)預(yù)覽以DataURI表示的DOC文檔,此外XDOC還可以實(shí)現(xiàn)文本、帶參數(shù)文本、html文本、json文本、公文等在線預(yù)覽,具體實(shí)現(xiàn)方法請(qǐng)看官方文檔
下面這種方式可以實(shí)現(xiàn)快速預(yù)覽word但是對(duì)文件使用的編輯器可能會(huì)有一些限制
<a target="_blank" rel="nofollow">XDOC</a> 復(fù)制代碼
4、excel文件
目前excel文件已經(jīng)有了類似pdf.js那樣的解析sheet.js
總結(jié):
1、免費(fèi)純前端方式實(shí)現(xiàn)在線預(yù)覽word、excel、ppt最優(yōu)選擇微軟在線預(yù)覽(不可編輯)
2、利用后端將文件轉(zhuǎn)為圖片,前端以圖片形式預(yù)覽(可行方案)
3、購買在線預(yù)覽服務(wù)例如百度DOC文檔服務(wù)、永中、I DOC VIEW等
著名:文章內(nèi)容是從網(wǎng)上搜集資料所得;在次發(fā)表只為自己以及頭條程序員兄弟日后使用圖個(gè)方便。
覺得有用記得收藏轉(zhuǎn)發(fā)!
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。