最近在擼一個電商網站,有一個需求是要像淘寶商品詳情頁那樣,鼠標放在主圖上,顯示圖片放大鏡效果,找了一下貌似沒有什麼合適的vue插件,因而本身擼了一個,分享一下。小白第一次分享,各位大神莫見笑。html
picture magnifier component for Vue.js 2.x
基於vue2.x的電商圖片放大鏡插件
# 安裝 install npm install vue-piczoom --save
# 使用 use --script import PicZoom from 'vue-piczoom' export default { name: 'App', components: { PicZoom } } --html <pic-zoom url="static/imac2.jpg" :scale="3"></pic-zoom>
props | describe | default |
---|---|---|
url | 圖片地址 | string required |
big-url | 大圖地址 | string null |
scale | 圖片放大倍數 | number 2.5 |
scroll | 放大時頁面是否可滾動 | boolean fasle |
組件默認是100%的高寬,因此建議將組件包含在一個有固定高寬的容器內。如:vue
<div class="pic-box"> <!--pic-box:width:500px;height:500px--> <pic-zoom url="static/imac2.jpg" :scale="3"></pic-zoom> </div>
在線示例git
Githubgithub
1.0.4版本:(2018-01-22)
1.更換算法,解決父級元素爲position:relative時定位錯誤;
2.優化邊緣檢測,解決放大選區移動至邊緣時,放大移動失效;
3.優化移動算法,移動選區更流暢;算法