激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - js教程 - 微信小程序如何獲取圖片寬度與高度

微信小程序如何獲取圖片寬度與高度

2022-02-15 20:00bug制造者 js教程

這篇文章主要給大家介紹了關于微信小程序如何獲取圖片寬度與高度的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

起源

最近在做A需求, 其中有個小功能點描述如下: 從配置端返回張圖片, 期望寬度不變(750)、高度根據圖片自適應.

我以為的

// 為便于講解, 將css作為style屬性綁定[實際不推薦]&& src的值先寫死[后期改成接口返回的即可]
<view style="width:100%;">
 <image src="{{src}}"></image>
</view>

我一開始想到的就是: 設置內容區的width: 100%會自動占滿屏幕寬度, 高度就會自適應.

微信小程序如何獲取圖片寬度與高度

實際效果: image占據空間為: 屏幕寬度 x 0

解決方案

核心: 解決如何獲取圖片的高度

初級方案

重點: 在圖片加載完成后獲取對應的圖片信息.

經查小程序開發文檔后發現, 有提供加載成功的回調, 如下:

微信小程序如何獲取圖片寬度與高度

演示Demo如下:

// wxml
<view style="width:100%;" >
 <image src="https://sf3-ttcdn-tos.pstatp.com/img/mosaic-legacy/3796/2975850990~300x300.image" bindload="loadSuccess" style="width:{{imageWidth}}px; height:{{imageHeight}}px"></image>
</view>

//js
Page({
 data: {
 imageHeight: 0,
 imageWidth: 0
 },
 loadSuccess(e){
 const { detail: {width, height} } = e
 this.setData({
  imageWidth: width,
  imageHeight:height
 })
 }
})

先來看看效果:

微信小程序如何獲取圖片寬度與高度

思考個問題:  假設我有100張圖片都需要做自適應, 那么是不是多了很多繁瑣的setData(), 同時也會導致性能問題.

進階方案

經朋友提醒后發現, 小程序image還有個屬性叫做mode, 可以去設置圖片的裁剪&縮放等形式.

微信小程序如何獲取圖片寬度與高度

關于mode屬性的取值可選項如下圖:

微信小程序如何獲取圖片寬度與高度

話不多說, 我們看看實際效果如何:

// 750x110的圖片
<view style="width:100%;" >
 <image src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ba1f75f0d29c40759b43ef910dacb4e7~tplv-k3u1fbpfcp-watermark.image" mode="widthFix"></image>
</view>

// 750x480的圖片
<view style="width:100%;" >
 <image src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ba1f75f0d29c40759b43ef910dacb4e7~tplv-k3u1fbpfcp-watermark.image" mode="widthFix"></image>
</view>

看看750x110的效果圖:

微信小程序如何獲取圖片寬度與高度

再看看750x480的效果圖:

微信小程序如何獲取圖片寬度與高度

到了這里, 只需要把src的值改為接口返回的, 是不是就實現了寬度固定、高度自適應的需求了~

最后

該屬性主要是為了實現圖片的自適應、換個角度來講, 主要是確保圖片不失真。

到此這篇關于微信小程序如何獲取圖片寬度與高度的文章就介紹到這了,更多相關微信小程序獲取圖片寬高度內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://juejin.cn/post/6924322789314789383

延伸 · 閱讀

精彩推薦
  • js教程javascript實現倒計時提示框

    javascript實現倒計時提示框

    這篇文章主要為大家詳細介紹了javascript實現倒計時提示框,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    友人CWH8412022-01-25
  • js教程一起來了解一下JavaScript的預編譯(小結)

    一起來了解一下JavaScript的預編譯(小結)

    這篇文章主要介紹了一起來了解一下JavaScript的預編譯(小結),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的...

    前端布吉島11992022-01-25
  • js教程JavaScript WeakMap使用詳解

    JavaScript WeakMap使用詳解

    這篇文章主要介紹了JavaScript WeakMap使用的詳細介紹,幫助大家更好的理解和使用JavaScript,感興趣的朋友可以了解下...

    MDN7082022-01-17
  • js教程three.js中多線程的使用及性能測試詳解

    three.js中多線程的使用及性能測試詳解

    這篇文章主要給大家介紹了關于three.js中多線程的使用及性能測試的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考...

    郭先生的博客4692021-12-28
  • js教程Javascript實現漢字和拼音互轉的終極方案

    Javascript實現漢字和拼音互轉的終極方案

    網上關于JS實現漢字和拼音互轉的文章很多,但是比較雜亂,有的不支持多音字、不支持聲調或者字典文件太大,無法根據實際需要滿足需求。這篇文章給...

    我是小茗同學10422021-12-15
  • js教程原生js實現2048小游戲

    原生js實現2048小游戲

    這篇文章主要為大家詳細介紹了原生js實現2048小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    一個21歲的老同志5402022-02-13
  • js教程js實現隨機點名功能

    js實現隨機點名功能

    這篇文章主要為大家詳細介紹了js實現隨機點名功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    等待的L先生5042021-12-16
  • js教程js實現鼠標切換圖片(無定時器)

    js實現鼠標切換圖片(無定時器)

    這篇文章主要為大家詳細介紹了js實現鼠標切換圖片,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    楓思然8172022-01-10
主站蜘蛛池模板: 黄色网址免费在线 | 国产精品剧情一区二区在线观看 | 成人毛片视频免费 | 成人免费久久 | 69性欧美高清影院 | 九一免费在线观看 | 亚洲aⅴ免费在线观看 | 欧美精品一区二区三区在线 | 久久狂草 | 美女福利视频国产 | 国产亚洲在 | 九一免费版在线观看 | 少妇一级淫片免费放播放 | 福利在线影院 | 黄色影院网站 | 伊人成人免费视频 | 欧美性生交xxxxx久久久缅北 | 久久蜜桃香蕉精品一区二区三区 | 本站只有精品 | 麻豆视频在线观看 | 中文字幕在线永久 | 国内免费视频成人精品 | 亚洲福利在线视频 | 一夜新娘第三季免费观看 | 九九视屏 | 国产三级精品最新在线 | 成年毛片 | 看免费黄色大片 | 91专区在线观看 | 天天夜夜草 | 中国hd高清xxxxvideo | 91精品国产福利尤物免费 | 国产精品一区二区日韩 | 久久久久久久久久亚洲 | 国产第一页精品 | 国产成人综合在线 | 一级片国产片 | 亚洲欧美日韩精品久久 | 久草在线免费资源站 | 成人免费自拍视频 | 欧美精品日日鲁夜夜添 |