移動端水平滑動刪除程式碼例項
分享一段程式碼例項,它是比較常見的移動端的操作。
水平向左滑動就可以刪除元素,需要的朋友可以做一下參考。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" /> <meta name="format-detection" content="telephone=no"> <meta name="apple-mobile-web-app-capable" content="yes"> <title>向左滑動刪除</title> <script type="text/javascript" src='http://libs.baidu.com/jquery/2.0.0/jquery.js'></script> <style> .main01 { width: 100%; height: auto; margin: 0 auto; overflow: hidden; } .main01 ul li { position: relative; width: 100%; height: 3rem; line-height: 3rem; border-bottom: 1px solid #efefef; font-size: 1.3rem; -webkit-transform: translateX(0px); } .txt { padding-left: 1rem; width: 100%; box-sizing: border-box; } .del { position: absolute; top: 0; right: -4rem; width: 4rem; line-height: 3rem; height: 3rem; background: #F00; color: #FFF; text-align: center; } #more { text-align: center; line-height: 3rem; padding-top: 1rem; padding-bottom: 1rem; } #more a { width: 5rem; height: 3rem; line-height: 3rem; color: #FFF; background: #0C6; text-align: center; font-size: 1.3rem; display: inline-block; } </style> </head> <body> <div class="main01" id="hdlist"> <ul> <li class="list-li"><div class="txt">向左滑動刪除</div><div class="del">刪除</div></li> <li class="list-li"><div class="txt">向左滑動刪除</div><div class="del">刪除</div></li> <li class="list-li"><div class="txt">向左滑動刪除</div><div class="del">刪除</div></li> <li class="list-li" style="display:none"><div class="txt">向左滑動刪除</div><div class="del">刪除</div></li> <li style="display:none"><div class="txt">向左滑動刪除</div><div class="del">刪除</div></li> </ul> </div> </body> <script> window.addEventListener('load', function() { var initX; //觸控位置 var moveX; //滑動時的位置 var X = 0; //移動距離 var objX = 0; //目標物件位置 document.getElementById("hdlist").addEventListener('touchstart', function(event) { event.preventDefault(); var obj = event.target.parentNode; if (obj.className == "list-li") { initX = event.targetTouches[0].pageX; objX = (obj.style.WebkitTransform.replace(/translateX\(/g, "").replace(/px\)/g, "")) * 1; } if (objX == 0) { document.getElementById("hdlist").addEventListener('touchmove', function(event) { event.preventDefault(); var obj = event.target.parentNode; if (obj.className == "list-li") { moveX = event.targetTouches[0].pageX; X = moveX - initX; if (X >= 0) { obj.style.WebkitTransform = "translateX(" + 0 + "px)"; } else if (X < 0) { var l = Math.abs(X); obj.style.WebkitTransform = "translateX(" + -l + "px)"; if (l > 50) { l = 50; obj.style.WebkitTransform = "translateX(" + -l + "px)"; } } } }); } else if (objX < 0) { document.getElementById("hdlist").addEventListener('touchmove', function(event) { event.preventDefault(); var obj = event.target.parentNode; if (obj.className == "list-li") { moveX = event.targetTouches[0].pageX; X = moveX - initX; if (X >= 0) { var r = -50 + Math.abs(X); obj.style.WebkitTransform = "translateX(" + r + "px)"; if (r > 0) { r = 0; obj.style.WebkitTransform = "translateX(" + r + "px)"; } } else { //向左滑動 obj.style.WebkitTransform = "translateX(" + -50 + "px)"; } } }); } }) document.getElementById("hdlist").addEventListener('touchend', function(event) { event.preventDefault(); var obj = event.target.parentNode; if (obj.className == "list-li") { objX = (obj.style.WebkitTransform.replace(/translateX\(/g, "").replace(/px\)/g, "")) * 1; if (objX > -50) { obj.style.WebkitTransform = "translateX(" + 0 + "px)"; objX = 0; } else { obj.style.WebkitTransform = "translateX(" + -50 + "px)"; objX = -50; } } }) }) </script> </html>
相關文章
- JavaScript刪除元素節點程式碼例項JavaScript
- 刪除字串中的html標籤程式碼例項字串HTML
- JavaScript運動框架程式碼例項JavaScript框架
- 美化滾動條效果程式碼例項
- css3晃動效果程式碼例項CSSS3
- SVG拖動繪製矩形程式碼例項SVG
- led驅動程式例項
- CSS3星系運動效果程式碼例項CSSS3
- DophinScheduler 如何定期刪除日誌例項?
- vue移動端路由切換完整例項Vue路由
- JavaScript隨滑鼠晃動的div塊程式碼例項JavaScript
- win10刪除多餘啟動項怎麼操作 win10如何刪除多餘的開機啟動項Win10
- 移動端下拉重新整理原理和例項
- win10啟動項program怎麼刪除_win10工作管理員啟動program如何刪除Win10
- 輕鬆玩轉Python檔案操作:移動、刪除Python
- 如何刪除win10多餘的開機啟動項_win10刪除多餘的系統啟動項步驟Win10
- MySQL自動備份指令碼30天自動刪除MySql指令碼
- TensorFlow Lite+OpenCV實現移動端水印的檢測與去除OpenCV
- 3.1.5 啟動例項
- 刪除所有正在執行和退出的docker例項Docker
- k8s透過api介面刪除例項K8SAPI
- win10移動中心被刪了怎麼恢復 win10恢復刪除移動中心操作方法Win10
- PHP+Ajax手機移動端發紅包例項PHP
- wepy 滑動刪除功能
- PG 自動刪除archivelogHive
- dom操作程式碼例項
- css梯形程式碼例項CSS
- Uber開源Piranha:一種自動刪除陳舊程式碼的工具
- Mac如何移動隱藏刪除mac選單欄圖示Mac
- 怎樣新增、刪除、移動、複製、建立、查詢節點
- 裝置驅動程式包可以刪除嗎 win10裝置驅動程式包能刪嗎Win10
- phpqrcode生成動態二維碼簡單例項PHP單例
- dvd驅動器怎麼刪除 win10如何刪除dvd驅動器Win10
- SAP RETAIL 事務程式碼WRDL - 刪除自動補貨執行記錄AI
- vscode自動刪除行尾空格VSCode
- 刪除PPT中所有動畫動畫
- Mac電腦複製,移動和刪除檔案mageRanger使用技巧MacRanger
- vue移動端專案接入vconsole(移動端除錯)Vue除錯
- Flutter動畫例項——4缸發動機動畫Flutter動畫