Axure RP9 案例:京東與淘寶的商品圖片是如何被放大的?
在電商的商品詳情頁中我們經常會看到圖片放大器的運用,我們以京東商品詳情頁為例來制作這樣的原型效果。案例中綜合運用了鼠標移入事件、鼠標移動事件,元件的移動、元件的顯示/隱藏等交互動作。
?觀察交互
首先我們觀察京東詳情頁中的圖片放大效果。
當鼠標在左側圖片上方移動時,圖片上方會出現一個半透明的圖層跟隨鼠標移動,我們將這個半透明的圖層稱之為放大鏡。同時在原圖右側會出現一張放大版的高清大圖,高清大圖顯示的圖片信息與左側半透明圖層下的圖片信息一致。
鼠標移出原圖范圍邊界時,放大鏡不在移動,同時右側的高清大圖消失。
商品圖片下方有多張縮略圖,鼠標在這些縮略圖之間來回移動可切換上方的商品圖片。鼠標停留在縮略圖上方時,縮略圖會有一個選中效果,邊框變?yōu)榱思t色。
思路分析
商品原圖以及放大版的高清大圖可以用動態(tài)面板盛放,動態(tài)面板的每個狀態(tài)放置一張商品圖片。商品圖片及高清大圖這兩個動態(tài)面板中的圖片順序盡量保持一致。兩個動態(tài)面板的尺寸相同,這里切記不要勾選自適應內容。
通過為頁面設置鼠標移動事件,控制放大鏡的移動,放大鏡隨鼠標移動,放大鏡在水平方向的位置為鼠標的橫坐標-放大鏡一半的寬度,垂直方向的位置為鼠標的縱坐標-放大鏡一半的高度。
在設置交互之前,我們需要添加一些邏輯判斷條件,限制鼠標的移動范圍,即鼠標僅能在商品圖片的動態(tài)面板內移動。 在這個交互事件中,我們還需要確定高清大圖的坐標位置。
與商品原圖不同的是,商品原圖上方的放大鏡在移動,商品圖片不動;右側的高清大圖在移動,上方的放大鏡不動(這里的放大鏡用于輔助理解,實際上不存在)。所以高清大圖的移動距離=-放大鏡相較于商品原圖的移動距離x圖片的放大倍數(高清大圖的尺寸/商品原圖尺寸)。
放大鏡的移動距離=放大鏡的坐標-商品原圖的坐標。
放大鏡的默認位置與商品圖片的位置一致,這里建議放大鏡的尺寸大于等于商品圖片的一半尺寸。
默認隱藏放大鏡和高清大圖的動態(tài)面板。
縮略圖切換商品圖片這一交互效果,可以通過鼠標移入事件來顯示不同的商品原圖和高清大圖。
制作原型
元件準備?:
拖動一個動態(tài)面板至設計區(qū)域,為動態(tài)面板增加5個狀態(tài),每個狀態(tài)頁面中放大一張商品圖片,商品圖片尺寸為400×400。
再從元件庫拖動一個動態(tài)面板至右側,為動態(tài)面板增加5個狀態(tài),每個狀態(tài)頁面中放置一張高清大圖,大圖尺寸為800×800。
放置一個紅色半透明的矩形至商品圖片動態(tài)面板的上方,矩形尺寸為200×200,矩形與商品圖片位置相同。
放大圖片:
為頁面設置鼠標移動事件,添加邏輯條件,當鼠標的移動范圍不超出原圖動態(tài)面板的邊界且動態(tài)面板狀態(tài)為圖1時,顯示放大鏡,移動放大鏡至絕對位置([[Cursor.x-Target.width/2]],[[Cursor.y-Target.height/2]]),顯示高清大圖1,移動高清大圖1至絕對位置([[(LVAR2.x-LVAR1.x)2]],[[(LVAR2.y-LVAR1.y)2]])。
案例中有5張商品圖片,同樣的原理,為另外4張商品圖片設置交互情形。最后還要為商品添加一個情形,即當鼠標移出商品圖片邊界外時,隱藏放大鏡和高清大圖。
切換商品圖片 將5張商品縮略圖設置為一個選項組,為縮略圖設置選中樣式,即選中時邊框線為紅色。為每個縮略圖添加鼠標移入事件,選中縮略圖,切換商品圖片和高清大圖的動態(tài)面板狀態(tài),顯示對應的圖片。
到這里,原型已經制作完畢,點擊預覽,在瀏覽器中查看原型。
#專欄作家#
拼搏的80后,人人都是產品經理專欄作家。10年互聯(lián)網從業(yè)經歷,具有各類型B端、C端產品的設計經驗,關注區(qū)塊鏈及人工智能的技術發(fā)展及應用場景探索。
本文原創(chuàng)發(fā)布于人人都是產品經理。未經許可,禁止轉載
題圖來自Unsplash,基于CC0協(xié)議
產品小白沒看懂復雜的交互設計,想從基礎開始學,卻無從下手?
可以找Axure實戰(zhàn)班的助教小可愛@CC-起點學院(微信:qidiancc520),回復關鍵詞:禮物
? 領取原型設計大禮包,還有不定期的Axure免費視頻課程分享,老師在線答疑,多學多看多思考,你也能成為Axure原型設計大牛哦~
親,能發(fā)下源文件下載地址么
試了作者的配方,發(fā)現不成功,又搜索了其他,終于明白問題出在哪里了,最后高清大圖1到達的位置是負的,x和y軸坐標前都要加-號。