最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序?qū)崿F(xiàn)列表左右滑動

 更新時間:2020年11月19日 10:24:45   作者:小北1943  
這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)列表左右滑動,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

做微信小程序開發(fā),和app一樣經(jīng)常會用到列表左右滑動操作(刪除等),目前微信小程序官方?jīng)]有提供相應(yīng)的控件。

只能我們自己來做,方法很多,我這里給個思路,僅供參考,歡迎討論。

1、我們可以把列表的元素放在scroll-view控件中,并且讓scroll-view實現(xiàn)橫向滑動

2、把列表內(nèi)容項的寬度占滿手機寬度,利用rpx特性(自適應(yīng)屏幕),默認iphon6就是750rpx,只要設(shè)置大于等于750rpx就可以。

3、監(jiān)聽滑動后列表操作事件,即可

細節(jié)點:

(1)scroll-view實現(xiàn)橫向滑動,這個微信文檔寫的不是很詳細

第一步,wxml中在scroll-view控件中,寫上 scroll-x

<scroll-view scroll-x class='scroll-container'>
</scroll-view>

第二步,要在wxss樣式文件中增加上white-space: nowrap;

.scroll-container{
height: 200rpx;
background-color: floralwhite;
margin-top: 20rpx;
display: flex;
flex-direction: row;
align-items: center;
white-space: nowrap;
width: 100%;}

第三步:scroll-view 默認滑動的時候,是有個線條的。體驗不好,去掉。大家可以對比下效果

::-webkit-scrollbar{ width: 0; height: 0; color: transparent;} 

(2)比如滑動刪除第一條數(shù)據(jù)后,第二條數(shù)據(jù)的默認是處于滑動后狀態(tài),把操作項都顯示出來了,建議每次操作完,把scroll-view的位置復(fù)原。修改scroll-left的值就好,我每次操作完,就把該值設(shè)置為0。

<scroll-view scroll-x class='scroll-container' scroll-left='{{scroll_left}}'

(3)列表內(nèi)容可能會超出屏幕默認值,我這個例子是單行顯示的,所有只要文字大于一定數(shù)量就截取。單獨寫了個函數(shù)把數(shù)據(jù)處理了下,這個可以實際情況實際處理。

代碼如下:

wxml:注意class done1是為了做完成后效果,這里只是演示就簡單實現(xiàn)了下,實際應(yīng)該針對對應(yīng)的列表進行處理,可以考慮把原數(shù)據(jù)做成數(shù)組字典。 /data-content 是為了刪除的時候,知道是刪除了哪一行/

<view>
 <block wx:for='{{items}}' wx:key=''>
 <scroll-view scroll-x class='scroll-container' scroll-left='{{scroll_left}}'>
  <text class='content {{done1}}'>{{item}}</text>
  <text class='del' data-content='{{index}}' bindtap='del'>刪除</text>
  <text class='done' data-content='{{index}}' bindtap='done'>完成</text>
 </scroll-view>
 </block>
</view>

wxss:

::-webkit-scrollbar{

 width: 0;
 height: 0;
 color: transparent;

}

.scroll-container{

 height: 200rpx;
 background-color: floralwhite;
 margin-top: 20rpx;
 display: flex;
 flex-direction: row;
 align-items: center;
 white-space: nowrap;
 width: 100%;

}

.content{

 padding-left: 20rpx;
 display: inline-block;
 line-height: 200rpx;
 font-size: 40rpx;
 width: 750rpx;

}

.del{

 display: inline-flex;
 width: 200rpx;
 height: 200rpx;
 line-height: 200rpx;
 align-items: center;
 justify-content: center;
 background-color: red;
 color: white;

}

.done{
 display: inline-flex;
 width: 200rpx;
 height: 200rpx;
 line-height: 200rpx;
 align-items: center;
 justify-content: center;
 background-color: green;
 color: white;
}
.done1{
 text-decoration: line-through;
 color: gainsboro;
}

js:

// pages/test06/test06.js
//hhString是為了處理下列表內(nèi)容的,超出了就是用...顯示,可以注釋掉不用
import {hhString} from '../../utils/util.js';
Page({

 /**

 * 頁面的初始數(shù)據(jù)

 */

 data: {

 items: ['我是第一條測試數(shù)據(jù)', '我是第二條測試數(shù)據(jù)', '我是第三條測試數(shù)據(jù) ', '我是第四條測試數(shù)據(jù)', '我是第五條測試數(shù)據(jù) ', '我是第六條測試數(shù)據(jù),數(shù)據(jù)很多很多很多很多很多', '我是第七條測試數(shù)據(jù)', '我是第八條測試數(shù)據(jù)', '我是第九條測試數(shù)據(jù)'],

 scroll_left:'0rpx',

 },

 /**
 * 生命周期函數(shù)--監(jiān)聽頁面加載
 */

 onLoad: function (options) {
 //hhString是為了處理下列表內(nèi)容的,超出了就是用...顯示,可以注釋掉不用

 this.setData({

  items:hhString(this.data.items)

 })

 },

 del:function(event){

 //event.currentTarget.dataset.content獲取到列表的所在的行號
 //splice 刪除數(shù)組數(shù)據(jù)函數(shù),第一個參數(shù)是位置,第二個是個數(shù)

 this.data.items.splice(event.currentTarget.dataset.content,1);
 this.setData({
  items: this.data.items,
  scroll_left:'0rpx'

 });

 },

 done: function (event) {
 //這里簡易實現(xiàn)了下效果,沒有針對對應(yīng)的行號,實際業(yè)務(wù)再修改
 this.setData({
  scroll_left: '0rpx',
  done1: 'done1'

 });

 },

})

util->util.js

const hhString = (data)=>{
 let hstring = [];
 for(let val of data){
 if(val.length>10){
  val = val.substring(0,10);
  val = val+'...'

 }
 hstring.push(val);

 }
 return hstring;

}

module.exports = {
 hhString:hhString

}

為大家推薦現(xiàn)在關(guān)注度比較高的微信小程序教程一篇:《微信小程序開發(fā)教程》小編為大家精心整理的,希望喜歡。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • window.ActiveXObject使用說明

    window.ActiveXObject使用說明

    判斷瀏覽器是否支持ActiveX控件,如果瀏覽器支持ActiveX控件可以利用
    2010-11-11
  • JS+Vue實現(xiàn)三級全選單選

    JS+Vue實現(xiàn)三級全選單選

    這篇文章主要為大家詳細介紹了JS+Vue實現(xiàn)三級全選單選,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • js對象數(shù)組按屬性快速排序

    js對象數(shù)組按屬性快速排序

    前一篇《關(guān)于selector性能比賽》中提到,目測覺得在$("div,p,a")這樣有逗號時,sizzle耗時異常(600多個元素,花了200ms),說是它可能沒有優(yōu)化ie下的排序。
    2011-01-01
  • JavaScript function 的 length 屬性使用介紹

    JavaScript function 的 length 屬性使用介紹

    函數(shù)的 length 得到的是形參個數(shù),如果函數(shù)內(nèi)部是通過arguments 調(diào)用參數(shù),而沒有實際定義參數(shù)的話, length 只會的得到0
    2014-09-09
  • javascript變量聲明實例分析

    javascript變量聲明實例分析

    這篇文章主要介紹了javascript變量聲明,實例分析了javascript變量聲明的相關(guān)使用技巧,需要的朋友可以參考下
    2015-04-04
  • 前端小知識之??=?操作符更簡潔的默認值處理方式

    前端小知識之??=?操作符更簡潔的默認值處理方式

    這篇文章主要介紹了前端小知識之??=?操作符更簡潔的默認值處理方式的相關(guān)資料,??=操作符是JavaScript中用于設(shè)置默認值的新操作符,它僅在變量值為null或undefined時才賦值,需要的朋友可以參考下
    2024-11-11
  • JavaScript提高加載和執(zhí)行效率的方法

    JavaScript提高加載和執(zhí)行效率的方法

    JavaScript在瀏覽器中的性能成為開發(fā)者所面臨的最重要的可用性問題。而這個問題又因JavaScript的阻塞特性變的復(fù)雜,也就是說當瀏覽器在執(zhí)行JavaScript代碼時,不能同時做其他任何事情。本文詳細介紹了如何正確的加載和執(zhí)行JavaScript代碼,從而提高其在瀏覽器中的性能。
    2017-02-02
  • js實現(xiàn)簡單的碰壁反彈效果

    js實現(xiàn)簡單的碰壁反彈效果

    這篇文章主要為大家詳細介紹了js實現(xiàn)簡單的碰壁反彈效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • 基于SpringMVC+Bootstrap+DataTables實現(xiàn)表格服務(wù)端分頁、模糊查詢

    基于SpringMVC+Bootstrap+DataTables實現(xiàn)表格服務(wù)端分頁、模糊查詢

    這篇文章主要介紹了基于SpringMVC+Bootstrap+DataTables實現(xiàn)表格服務(wù)端分頁、模糊查詢的相關(guān)資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-10-10
  • js注冊時輸入合法性驗證方法

    js注冊時輸入合法性驗證方法

    這篇文章主要為大家詳細介紹了js注冊時輸入合法性驗證方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10

最新評論

沾化县| 全州县| 南丹县| 泉州市| 安达市| 三门峡市| 海宁市| 会理县| 禄丰县| 阜城县| 海淀区| 江口县| 蕉岭县| 六枝特区| 元阳县| 井冈山市| 阿尔山市| 乐平市| 白沙| 日照市| 盐边县| 平安县| 历史| 宿迁市| 葵青区| 社会| 泸西县| 雷山县| 宁海县| 静宁县| 峨边| 上饶县| 武安市| 湟源县| 洪江市| 兴安县| 阜阳市| 灵璧县| 绥德县| 屯留县| 伊吾县|