微信小程序圖片放大預覽效果的實現

近期很多剛學習小程序的同學,想做哪種圖片點擊放大,然後可以左右滑動預覽的效果。我也特意去研究下,發現直接用微信程序自己的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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章