国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

微信小程序如何及時(shí)獲取頁面循環(huán)元素的寬度、高度、距離左邊值、函數(shù)自調(diào)、類似遞歸、閃屏、selectAll、exec、globalData、map、scroll-view

這篇具有很好參考價(jià)值的文章主要介紹了微信小程序如何及時(shí)獲取頁面循環(huán)元素的寬度、高度、距離左邊值、函數(shù)自調(diào)、類似遞歸、閃屏、selectAll、exec、globalData、map、scroll-view。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


1、參數(shù)說明

distanceLeft:定義一個(gè)數(shù)組存儲(chǔ)各個(gè)循環(huán)元素距離左邊的值。
isPage:控制頁面顯示與隱藏。
scrollLeft:動(dòng)態(tài)設(shè)置滾動(dòng)距離。
isAactivity:存儲(chǔ)tabBar對應(yīng)id值。因?yàn)閺?code>tabBar頁面跳轉(zhuǎn)到tabBar頁面時(shí)不能在路徑上攜帶參數(shù),所以此參數(shù)存儲(chǔ)在全局變量中。


2、JavaScript部分

obtainWidth() {
	let that = this,
		query = wx.createSelectorQuery();
	
	query = query.selectAll('#idScrollLeft').boundingClientRect();
	
	query.exec(function (res) {
		that.setData({
			distanceLeft: res[0].map(item => item.left)
		}, function () {
			let key = getApp().globalData.isAactivity,
				distanceLeft = that.data.distanceLeft;
	
			// 獲取橫向滾動(dòng)各個(gè)元素寬度
			if (distanceLeft.length === 0) {
				that.obtainWidth();
			} else {
				that.setData({
					scrollLeft: that.data.distanceLeft[key - 1]
				}, function () {
					wx.hideLoading();
				});
			}
		});
	});
}

3、代碼解析

在微信小程序中使用scroll-view組件實(shí)現(xiàn)動(dòng)態(tài)設(shè)置滾動(dòng)條距離,在本人的項(xiàng)目中需要通過首頁點(diǎn)擊tabBar進(jìn)入分類頁面,所以在分類頁面使用scroll-view組件實(shí)現(xiàn)分類頁面的橫向tabBar功能。當(dāng)從首頁點(diǎn)擊不同的tabBar進(jìn)入分類頁面時(shí)需要顯示對應(yīng)的tabBar項(xiàng)在頁面可視區(qū)域內(nèi)。idScrollLeft是組建id,定義在每個(gè)循環(huán)出來的tabBar項(xiàng)上面,通過微信小程序相關(guān)的API可以獲取到每個(gè)tabBar距離左邊的值。此文章主要的特點(diǎn)是,當(dāng)?shù)谝淮螆?zhí)行函數(shù)的時(shí)候無法獲取到對應(yīng)的距離值,這是因?yàn)轫撁孢€沒有渲染,所以就獲取不到,本人嘗試使用this.setData里面的第二個(gè)參數(shù)解決,但是解決不了;也嘗試使用wx.nextTick()解決,結(jié)果也是無濟(jì)于事。最后還是通過判斷distanceLeft.length === 0時(shí)繼續(xù)函數(shù)自調(diào)的方式實(shí)現(xiàn)。此方案存在一個(gè)閃屏問題,目前還沒有找到合適的方法解決。閃屏內(nèi)容如下,在首頁通過tabBar進(jìn)入分類頁面時(shí),首先要渲染分類頁面,此時(shí)distanceLeft還沒有獲取到對應(yīng)的值,所以動(dòng)態(tài)的定位值為0,當(dāng)再次調(diào)用obtainWidth函數(shù)時(shí)才得到對應(yīng)值。此時(shí)才設(shè)置對應(yīng)距離值,如果這個(gè)tabBar不是首個(gè),那么就會(huì)定位到對應(yīng)tabBar,并把它移動(dòng)到屏幕可視區(qū)域內(nèi),在移動(dòng)的過程中就出現(xiàn)了閃屏效果。文章來源地址http://www.zghlxwxcb.cn/news/detail-534241.html

到了這里,關(guān)于微信小程序如何及時(shí)獲取頁面循環(huán)元素的寬度、高度、距離左邊值、函數(shù)自調(diào)、類似遞歸、閃屏、selectAll、exec、globalData、map、scroll-view的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 微信小程序獲取元素節(jié)點(diǎn)并對其進(jìn)行操作

    1.封裝獲取元素的方法 utils.js 2.頁面js中引入 3.頁面js中使用

    2024年02月16日
    瀏覽(32)
  • 微信小程序第五篇:頁面彈出效果及共享元素動(dòng)畫

    微信小程序第五篇:頁面彈出效果及共享元素動(dòng)畫

    系列文章傳送門: 微信小程序第一篇:自定義組件詳解 微信小程序第二篇:七種主流通信方法詳解 微信小程序第三篇:獲取頁面節(jié)點(diǎn)信息 微信小程序第四篇:生成圖片并保存到手機(jī)相冊 目錄 一、page-caontainer 實(shí)現(xiàn)假頁彈出 二、share-element 實(shí)現(xiàn)共享元素動(dòng)畫 首先我們先看一

    2024年02月09日
    瀏覽(21)
  • 微信小程序通過createSelectorQuery獲取元素 高度,寬度與界面距離

    微信小程序通過createSelectorQuery獲取元素 高度,寬度與界面距離

    小程序官方有提供給我們一個(gè) const query = wx.createSelectorQuery() 函數(shù) 我們可以先編寫這樣一段代碼 wxml 這里 我們定義了 多塊 view 都用 行內(nèi)樣式設(shè)置了它的 高度和寬度 js編寫代碼如下 我們運(yùn)行代碼 并點(diǎn)擊按鈕 點(diǎn)擊查看 這里 我們獲取了所有 類名中包含 textIn 的元素 并輸出 這里

    2024年02月05日
    瀏覽(95)
  • 獲取微信小程序頁面路徑的方法

    獲取微信小程序頁面路徑的方法

    appid可以點(diǎn)擊右上角“...”,再在彈出框中點(diǎn)擊小程序名稱,在小程序更多資料里面可以找到 注意:在復(fù)制結(jié)果中需要將.html去掉才是實(shí)際的訪問路徑,例如復(fù)制到的內(nèi)容是 pages/subMenu/productDetail/productDetail.html?productId=3936 實(shí)際路徑應(yīng)該是pages/subMenu/productDetail/productDetail?product

    2024年02月12日
    瀏覽(35)
  • 獲取微信小程序頁面路徑【保姆級教程】

    獲取微信小程序頁面路徑【保姆級教程】

    1.進(jìn)入微信小程序公眾平臺(tái),登錄賬號(hào),點(diǎn)擊右上角生成小程序碼 微信公眾平臺(tái) 2.輸入小程序名稱或者小程序的APPID或者原始ID,輸入完成,然后點(diǎn)擊搜索,然后下一步 ? ?3.輸入自己的微信號(hào)之后,點(diǎn)擊開啟 ? 4.看到提示開啟成功之后,就可以在手機(jī)上去獲取頁面路徑了 ?

    2024年02月16日
    瀏覽(27)
  • 微信小程序個(gè)人訂單,微信頭像用戶名信息獲取頁面

    微信小程序個(gè)人訂單,微信頭像用戶名信息獲取頁面

    這里先做一個(gè)簡單的展示,這個(gè)頁面是我參加比賽做的小程序,分享給大家,不是很好看哈哈哈哈 話不多說,先上代碼。首先是前端頁面 .wxml ? 接下來是美化一下頁面.wxss 最后就是js頁面啦,這里涉及到微信頭像昵稱的獲取,還有一些button的實(shí)現(xiàn),我這里其他頁面沒有附著,

    2024年02月11日
    瀏覽(22)
  • 微信小程序頁面跳轉(zhuǎn)時(shí)URL獲取不到參數(shù)

    原因: 在跳轉(zhuǎn)的url參數(shù)中添加了包含特殊字符?的情況下 ,會(huì)出現(xiàn)參數(shù)丟失的情況 1.最近在小程序開發(fā)過程中,發(fā)現(xiàn)之前可用的某個(gè)功能字段展示為了undefined,后來查看參數(shù)發(fā)現(xiàn) 頁面跳轉(zhuǎn)時(shí)參數(shù)丟失了 導(dǎo)致的 此時(shí)獲取到的參數(shù)都是正常的,在上線一段時(shí)間后,其它同學(xué)在 圖

    2024年02月11日
    瀏覽(21)
  • uniapp,轉(zhuǎn)微信小程序,獲取當(dāng)前頁面的 路由、路由參數(shù)

    uniapp,轉(zhuǎn)微信小程序,獲取當(dāng)前頁面的 路由、路由參數(shù)

    uniapp 獲取當(dāng)前路由信息跟 vue 不同,它沒有 route 對象。 uniapp 轉(zhuǎn)成小程序后是這樣的 當(dāng)前頁面展示的路由信息就是上一條中獲取到的 pages 的最后一條路由,即 它的內(nèi)容是: 當(dāng)前路由的參數(shù) 在 currentRoute.options 中 比如 index?type=diarydiaryid=123 的 options 就是 而 當(dāng)前頁面的完整路

    2024年02月14日
    瀏覽(101)
  • 微信小程序內(nèi)嵌H5頁面獲取openid+分享功能

    主要實(shí)現(xiàn)功能:1.通過webview實(shí)現(xiàn)小程序內(nèi)嵌H5頁面 ? ? ? ? ? ? ? ? ? ? ? ? ?2.在H5頁面獲取到用戶的openid ? ? ? ? ? ? ? ? ? ? ? ? ?3.在H5頁面實(shí)現(xiàn)分享獲取到分享人的openid和被分享者的openid 代碼實(shí)現(xiàn): 1.通過webview實(shí)現(xiàn)小程序內(nèi)嵌H5頁面 傳參:在地址后面加入的參數(shù)就是我

    2024年04月23日
    瀏覽(106)
  • 微信小程序獲取頁面節(jié)點(diǎn)方法簡介。canvas 滑動(dòng)驗(yàn)證碼 (前段,微信小程序,canvas2D)

    目錄 一.wx.createSelectorQuery():返回一個(gè) SelectorQuery 對象實(shí)例。在自定義組件或包含自定義組件的頁面中,應(yīng)使用?this.createSelectorQuery()?來代替 二.SelectorQuery.select(string selector)? 返回值是NodesRef 三.NodesRef? 四:執(zhí)行所有請求?NodesRef SelectorQuery.exec 五: canvas 滑動(dòng)驗(yàn)證碼(使用wx

    2024年02月09日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包