广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >微信小程序中image图片加载完成监听的示例分析
  • 192
分享到

微信小程序中image图片加载完成监听的示例分析

2024-04-02 19:04:59 192人浏览 独家记忆
摘要

这篇文章给大家分享的是有关微信小程序中image图片加载完成监听的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。需求在应用中显示的图片很多情况不满足业务需求,我们需要动态

这篇文章给大家分享的是有关微信小程序中image图片加载完成监听的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

需求

在应用中显示的图片很多情况不满足业务需求,我们需要动态根据图片的宽高进行缩放或加载中显示的缺省图片,这是我没就需要监听图片加载完成回调,来看看微信小程序怎么实现图片加载完成回调。

实现

1. 绑定回调

通过image标签的bindload属性绑定图片加载完成回调函数,src根据图片加载是否完成绑定是否显示缺省图:

<image src='{{loadComplete?srcImagePath:defaultImagePath}}' bindload="imageLoad"/>

2. 回调监听

js文件中定一个imageLoad函数,我们就可以通过参数拿到图片加载完成宽高信息:

imGonLoad(ev) {
  let src = ev.currentTarget.dataset.src,
   width = ev.detail.width,
   height = ev.detail.height
 }

3. 缩放图片

我们写一个工具类,然后调用imageUtil方法对原始图片根据屏幕宽高进行等比例缩放。

function imageUtil(e) {
 var imageSize = {};
 var originalWidth = e.detail.width;//图片原始宽 
 var originalHeight = e.detail.height;//图片原始高 
 var originalScale = originalHeight / originalWidth;//图片高宽比 
 console.log('originalWidth: ' + originalWidth)
 console.log('originalHeight: ' + originalHeight)
 imageSize.imageWidth = originalWidth;
 imageSize.imageHeight = originalHeight;
 //获取屏幕宽高 
 wx.getSystemInfo({
  success: function (res) {
   var windowWidth = res.windowWidth;
   var windowHeight = res.windowHeight;
   var windowscale = windowHeight / windowWidth;//屏幕高宽比 
   if (originalScale < windowscale) {//图片高宽比小于屏幕高宽比 
    //图片缩放后的宽为屏幕宽 
    imageSize.imageWidth = windowWidth;
    imageSize.imageHeight = (windowWidth * originalHeight) / originalWidth;
   } else {//图片高宽比大于屏幕高宽比 
    //图片缩放后的高为屏幕高 
    imageSize.imageHeight = windowHeight;
    imageSize.imageWidth = (windowHeight * originalWidth) / originalHeight;
   }
   imageSize.imageWidth = windowWidth;
   imageSize.imageHeight = windowHeight;
  }
 })
 console.log('缩放后的宽: ' + imageSize.imageWidth)
 console.log('缩放后的高: ' + imageSize.imageHeight)
 return imageSize;
}

4. 修改image宽高

通过imageUtil获取到目标宽高后,this.setData({width:imageUtil(e).width, height:imageUtil(e).height}) 即可以动态修改图片宽高了(e是imageLoad方法中的参数):

<image src='{{loadComplete?srcImagePath:defaultImagePath}}' bindload="imageLoad" style='width:width;height:height'/>

感谢各位的阅读!关于“微信小程序中image图片加载完成监听的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: 微信小程序中image图片加载完成监听的示例分析

本文链接: https://www.lsjlt.com/news/70417.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 微信小程序中image图片加载完成监听的示例分析
    这篇文章给大家分享的是有关微信小程序中image图片加载完成监听的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。需求在应用中显示的图片很多情况不满足业务需求,我们需要动态...
    99+
    2022-10-19
  • 微信小程序图片地扯转base64的示例分析
    这篇文章给大家分享的是有关微信小程序图片地扯转base64的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。使用方法js文件let $this =&nb...
    99+
    2022-10-19
  • 基于mpvue微信小程序下载远程图片到本地的示例分析
    小编给大家分享一下基于mpvue微信小程序下载远程图片到本地的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!效果流程梳理获取图片远程地址数组-->遍历拿到图片缓存(临时地址)...
    99+
    2022-10-19
  • 微信小程序图片自适应支持多图的示例分析
    这篇文章将为大家详细讲解有关微信小程序图片自适应支持多图的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。微信小程序图片自适应支持多图实例详解微信小程序图片自适应,...
    99+
    2022-10-19
  • 微信小程序拼接图片链接无底洞的示例分析
    这篇文章主要为大家展示了“微信小程序拼接图片链接无底洞的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“微信小程序拼接图片链接无底洞的示例分析”这篇文章吧...
    99+
    2022-10-19
  • 微信小程序中下拉刷新及上拉加载的示例分析
    小编给大家分享一下微信小程序中下拉刷新及上拉加载的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.下拉刷新的概念及应用...
    99+
    2022-10-19
  • 微信小程序中movable view移动图片和双指缩放的示例分析
    这篇文章主要为大家展示了“微信小程序中movable view移动图片和双指缩放的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“微信小程序中movabl...
    99+
    2022-10-19
  • 微信小程序中视图层条件渲染的示例分析
    这篇文章给大家分享的是有关微信小程序中视图层条件渲染的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下使用wx:if进行视图层的条件渲染示例:wxml:使用vi...
    99+
    2022-10-19
  • 微信小程序实现通过双向滑动缩放图片大小的示例分析
    这篇文章主要介绍了微信小程序实现通过双向滑动缩放图片大小的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。本文实例讲述了微信小程序实现...
    99+
    2022-10-19
  • 微信小程序中scroll-view实现上拉加载与下拉刷新的示例分析
    这篇文章主要为大家展示了“微信小程序中scroll-view实现上拉加载与下拉刷新的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“微信小程序中scrol...
    99+
    2022-10-19
  • 微信小程序把百度地图坐标转换成腾讯地图坐标的示例分析
    这篇文章给大家分享的是有关微信小程序把百度地图坐标转换成腾讯地图坐标的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。申请步骤填写信息wxml代码<map ...
    99+
    2022-10-19
  • 微信小程序中引入并使用自带和外部图标的示例分析
    这篇文章主要介绍微信小程序中引入并使用自带和外部图标的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!自带图标<view class="container"> ...
    99+
    2023-06-15
  • 微信小程序列表渲染功能之列表下拉刷新及上拉加载的示例分析
    小编给大家分享一下微信小程序列表渲染功能之列表下拉刷新及上拉加载的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!效果图首...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作