H5仿手Q左滑删除功能组件

背景

前不久遇到一个需求,h5列表页实现左滑删除功能。css

首先对下文有关滑块的指代标识作出统一规定 html

clipboard.png

体验了一下手Q原生滑动功能,在此以前对于滑块的具体动效提出了几个问题。(但愿你们也去观察体验一下,网上不少现成的代码都存在效果上的差别)git

  1. 控制单条li滑动仍是控制li中内容块滑动github

  2. 是否容许多条内容块同时展开web

  3. 当列表上下滑动时,内容块是否须要收起dom

在观察原生滑动功能后,对上述问题作出以下解答ide

  1. 控制li中内容块滑动,经过设置层级关系使得初始状态时按钮租处于内容块之下spa

  2. code

  3. htm

实现

dom与css

/* html结构 */
<ul>
    <li class="sl-li">
      <div class="sl-content">
        第11金!马龙4-0张继科乒球男单夺冠成就大满贯伟业
      </div>
      <div class="sl-opts">
        <span>删除</span>
      </div>
    </li>
</ul>

/* style 此处省略部分样式 */
<style>
    .sl-li {
      height: 100%;
      position: relative;
    }
    .sl-li .sl-content {
      height: 100%;
      position: relative;
      z-index: 10;
      background-color: #fff;
    }
    .sl-li .sl-opts {
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      z-index: 0;
      background-color: #F95F61;
      color: #fff;
      display: -webkit-box;
      -webkit-box-pack: center;
      -webkit-box-align: center;
    }
</style>

获得以下图的列表
clipboard.png

js

等我有空再细说好了 =-=你们去看源码吧。

最终效果:
图片描述

组件源码

https://github.com/yvonnevv/S...

后话:同事反馈没有给滑动开始或完成时暴露一个自定义事件的接口。。恩,会进行迭代的(°ˊдˋ°)°°

相关文章
相关标签/搜索