微信小程序?qū)崿F(xiàn)長按刪除圖片的示例
說明
最近在學(xué)小程序,遇到長按圖片刪除的問題,特此記錄,記錄自己的成長軌跡
需求:
長按刪除指定圖片
需要解決的問題
- 長按事件如何表示出來?
- 如何獲取當(dāng)前長按元素的下標?
- 如何刪除元素?
解決辦法
- 長按事件是用bindlongpress(不會跟點擊事件bindtap沖突);
- 在wxml中添加索引index,然后在js中用currentTarget.dataset.index獲取當(dāng)前元素下標
- 通過splice方法刪除splice(index,1),刪除一個當(dāng)前元素
具體實現(xiàn)
<view class="uploader__files"> <block wx:for="{{images}}" wx:key="{{item.id}}" > <view class="uploader__file" bindlongpress="deleteImage" data-index="{{index}}"> <image mode="aspectFill" class="uploader__img" src="{{item.path}}" /> </view> </block> </view>
在wxml中添加 bindlongpress="deleteImage" data-index="{{index}}" 來綁定事件并添加索引index
deleteImage: function (e) { var that = this; var images = that.data.images; var index = e.currentTarget.dataset.index;//獲取當(dāng)前長按圖片下標 wx.showModal({ title: '提示', content: '確定要刪除此圖片嗎?', success: function (res) { if (res.confirm) { console.log('點擊確定了'); images.splice(index, 1); } else if (res.cancel) { console.log('點擊取消了'); return false; } that.setData({ images }); } }) }
刪除部分的代碼
注意currentTarget與target的區(qū)別
1. currentTarget:綁定的事件當(dāng)前元素及其子元素都會觸發(fā)
2. target: 綁定的事件 子元素不會被觸發(fā)事件
效果展示
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ibm官方資料把應(yīng)用程序從 Internet Explorer 遷移到 Mozilla
使特定于 Internet Explorer 的 Web 應(yīng)用程序在 Mozilla 上運行時,您遇到過麻煩嗎?本文討論了將應(yīng)用程序遷移到基于開源 Mozilla 瀏覽器上時的常見問題。首先討論跨瀏覽器開發(fā)的基本技術(shù),然后介紹克服 Mozilla 和 Internet Explorer 之間差異的策略。2008-04-04javascript設(shè)計模式 – 職責(zé)鏈模式原理與用法實例分析
這篇文章主要介紹了javascript設(shè)計模式 – 職責(zé)鏈模式,結(jié)合實例形式分析了javascript職責(zé)鏈模式相關(guān)概念、原理、用法及操作注意事項,需要的朋友可以參考下2020-04-04js中獲取鍵盤按下鍵值event.keyCode、event.charCode和event.which的兼容性詳解
這篇文章主要給大家介紹了關(guān)于Javascript中獲取鍵盤按下鍵值event.keyCode、event.charCode和event.which的兼容性的相關(guān)資料,文中介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。2017-03-03