近期很多剛學習小程序的同學,想做哪種圖片點擊放大,然後可以左右滑動預覽的效果。我也特意去研究下,發現直接用微信程序自己的api就可以很方便的實現。今天就來教大家如何實現小程序圖片點擊放大的效果。
老規矩,先看效果圖
效果圖有點快,但是可以大致看出來效果了。我再給大家描述下吧
一個頁面有3張圖片,點擊其中任意一張都可以放大預覽。然後在預覽的時候,左右滑動,還可以看另外兩張圖片。
話不多說,直接上代碼
1,首先定義一個頁面image.wxml
<!--pages/image/image.wxml-->
<image src="{{imgList[0]}}" bindtap="preview" data-src="{{imgList[0]}}"></image>
<image src="{{imgList[1]}}" bindtap="preview" data-src="{{imgList[1]}}"></image>
<image src="{{imgList[2]}}" bindtap="preview" data-src="{{imgList[2]}}"></image>
這個頁面很簡單,就是放三個image用來顯示imgList數組裏的三張圖片。
2,實現圖片放大效果的核心方法如下。
上圖是官方的示例。我們來看下實際中是如何使用的。
3把image.js的完整代碼貼出來。
Page({
data: {
imgList: [
"https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=508387608,2848974022&fm=26&gp=0.jpg",
"https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3139953554,3011511497&fm=26&gp=0.jpg",
"https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=1022109268,3759531978&fm=26&gp=0.jpg"
]
},
//預覽圖片,放大預覽
preview(event) {
console.log(event.currentTarget.dataset.src)
let currentUrl = event.currentTarget.dataset.src
wx.previewImage({
current: currentUrl, // 當前顯示圖片的http鏈接
urls: this.data.imgList // 需要預覽的圖片http鏈接列表
})
}
})
這裏也很簡單,就是定義一個imgList圖片數組。然後定義一個方法,在點擊圖片時實現圖片放大預覽的效果。
其實代碼就這麼多,我們就可以輕鬆的實現小程序圖片的點擊放大效果了。
是不是很簡單。
我也有錄製視頻講解:https://edu.csdn.net/course/detail/25749