wap简单的卡片层叠布局 滑动

2024-05-05 01:32

本文主要是介绍wap简单的卡片层叠布局 滑动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 今天闲来无事看到了一篇文章  五行代码实现 炫动滑动 卡片层叠布局,仿探探、人人影视订阅界面 简单&优雅:LayoutManager+ItemTouchHelper

感觉挺好玩的..

点进去之前我以为是web实现的呢  然而并不是   阿西吧 

后面想了想   可以用web实现吗 感觉应该可以  说干就干

先贴code吧

 

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><script src="/content/js/jquery-1.8.2.min.js"></script><script src="/content/js/jquery.touchSwipe.min.js"></script><meta content="width=device-width, initial-scale=1, maximum-scale=1,minimum-scale=1.0, user-scalable=no" name="viewport" /><title>左右滑动测试</title><style>html, body { margin: 0; padding: 0; }header { background-color: #000000; color: #fff; padding: 0; margin: 0; line-height: 40px; text-align: center; font-size: 20px; }span, p { margin: 0; padding: 0; }img { margin: 0; padding: 0; }.layou { width: 70%; height: 300px; position: relative; margin: 10px auto; }.layou-list { position: absolute; width: 100%; height: 100%; overflow: hidden; border-bottom-left-radius: 2px; border-bottom-right-radius: 2px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.40); padding: 10px 5% 0 5%; background-color:#000;}.layou-list-img { width: 100%; height: 90%; }.layou-list-bottom { text-align: right; position: absolute; width: 100%; left: 0; bottom: 0; background-color: #000000; color: #fff; height: 10%; line-height: 30px; border-bottom: 1px solid #7e7e7e; }</style><!---webkit-transform: skewX(2deg);-->
</head>
<body ontouchmove="event.preventDefault()"><header><p>layouDemo</p></header><div class="layou"><div class="layou-list"><img class="layou-list-img" src="/content/images/icons/sl1.png" /><div class="layou-list-bottom"></div></div><div class="layou-list"><img class="layou-list-img" src="/content/images/icons/sl2.png" /><div class="layou-list-bottom"></div></div><div class="layou-list"><img class="layou-list-img" src="/content/images/icons/sl3.png" /><div class="layou-list-bottom"></div></div><div class="layou-list"><img class="layou-list-img" src="/content/images/icons/sl4.png" /><div class="layou-list-bottom"></div></div><div class="layou-list"><img class="layou-list-img" src="/content/images/icons/sl5.png" /><div class="layou-list-bottom"></div></div><div class="layou-list"><img class="layou-list-img" src="/content/images/icons/sl6.png" /><div class="layou-list-bottom"></div></div></div><script>$(function () {var layouNum = $(".layou-list").length;var load = function () {$(".layou-list").each(function (i, e) {$(e).css({ "z-index": layouNum - i, "transition-duration": "0.7s", "transform": " translate(0px, " + i * 7 + "px)", "width": "" + (90 - 4 * i) + "%", "-webkit-transition": "width .7s;", "left": 2 * i + "%" });});}$(".layou-list").each(function (i, e) {$(e).data("index", i);$(e).css({ "z-index": layouNum - i, "transition-duration": "0.7s", "transform": " translate(0px, " + i * 7 + "px)", "width": "" + (90 - 4 * i) + "%", "-webkit-transition": "width .7s;", "left": 2 * i + "%" });$(e).find(".layou-list-bottom").text((i + 1) + "/" + layouNum);});var isSwipe = false;//是否正在动画的控制$(".layou").swipe({//自己看jquery.touchSwipe.min.js apiswipeLeft: function (event, phase, direction, distance, duration, fingerCount) {//往左边滑动的事件//console.log("你用" + fingerCount + "个手指以" + duration + "秒的速度向" + direction + "滑动了" + distance + "像素 " + "你在" + phase + "中");if (isSwipe) {return !1;}isSwipe = true;$(".layou-list:eq(0)")[0].style.webkitTransform = "translate(" + -3 * distance + "px,-50px) translateZ(0)";setTimeout(function () {$(".layou").append($(".layou-list:eq(0)").attr("style", "").clone());$(".layou-list:eq(0)").remove();load();isSwipe = false;}, 500);},swipeRight: function (event, direction, distance, duration, fingerCount) {//往右滑动的事件if (isSwipe) {return !1;}isSwipe = true;$(".layou-list:eq(0)")[0].style.webkitTransform = "translate(" + 3 * distance + "px,-100px) translateZ(0)";//滑走的动画setTimeout(function () {$(".layou").append($(".layou-list:eq(0)").attr("style", "").clone());//移除动画,克隆元素,追加$(".layou-list:eq(0)").remove();//移除元素load();//重新加载isSwipe = false;}, 500);}});});</script>
</body>
</html>


花了个把小时实现了一下..(我不会跟你说我真的是现学现卖的....)代码应该比较简单..思路也简单  主要是滑动事件   动画实现

 

 

 

还有没有实现的功能:就是滑动一部分  图片滑动一部分 放手之后图片返回原位, 做了一下 没弄出来 =_=....  应该是判断滑动像素大于多少多少 然后滑动动画 然后复位

 

还有个问题就是页面进来  那些图片会抖一两下.. 可以用个load层掩盖一下当layou-list 加载之后将load去掉就行了.懒的写了

手机可以通过这个地址扫码访问 查看效果...

 

 

 

这篇关于wap简单的卡片层叠布局 滑动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/960537

相关文章

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

基于Redis有序集合实现滑动窗口限流的步骤

《基于Redis有序集合实现滑动窗口限流的步骤》滑动窗口算法是一种基于时间窗口的限流算法,通过动态地滑动窗口,可以动态调整限流的速率,Redis有序集合可以用来实现滑动窗口限流,本文介绍基于Redis... 滑动窗口算法是一种基于时间窗口的限流算法,它将时间划分为若干个固定大小的窗口,每个窗口内记录了该时间

MyBatis框架实现一个简单的数据查询操作

《MyBatis框架实现一个简单的数据查询操作》本文介绍了MyBatis框架下进行数据查询操作的详细步骤,括创建实体类、编写SQL标签、配置Mapper、开启驼峰命名映射以及执行SQL语句等,感兴趣的... 基于在前面几章我们已经学习了对MyBATis进行环境配置,并利用SqlSessionFactory核

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

hdu2289(简单二分)

虽说是简单二分,但是我还是wa死了  题意:已知圆台的体积,求高度 首先要知道圆台体积怎么求:设上下底的半径分别为r1,r2,高为h,V = PI*(r1*r1+r1*r2+r2*r2)*h/3 然后以h进行二分 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#includ

usaco 1.3 Prime Cryptarithm(简单哈希表暴搜剪枝)

思路: 1. 用一个 hash[ ] 数组存放输入的数字,令 hash[ tmp ]=1 。 2. 一个自定义函数 check( ) ,检查各位是否为输入的数字。 3. 暴搜。第一行数从 100到999,第二行数从 10到99。 4. 剪枝。 代码: /*ID: who jayLANG: C++TASK: crypt1*/#include<stdio.h>bool h

uva 10387 Billiard(简单几何)

题意是一个球从矩形的中点出发,告诉你小球与矩形两条边的碰撞次数与小球回到原点的时间,求小球出发时的角度和小球的速度。 简单的几何问题,小球每与竖边碰撞一次,向右扩展一个相同的矩形;每与横边碰撞一次,向上扩展一个相同的矩形。 可以发现,扩展矩形的路径和在当前矩形中的每一段路径相同,当小球回到出发点时,一条直线的路径刚好经过最后一个扩展矩形的中心点。 最后扩展的路径和横边竖边恰好组成一个直

poj 1113 凸包+简单几何计算

题意: 给N个平面上的点,现在要在离点外L米处建城墙,使得城墙把所有点都包含进去且城墙的长度最短。 解析: 韬哥出的某次训练赛上A出的第一道计算几何,算是大水题吧。 用convexhull算法把凸包求出来,然后加加减减就A了。 计算见下图: 好久没玩画图了啊好开心。 代码: #include <iostream>#include <cstdio>#inclu

uva 10130 简单背包

题意: 背包和 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <stack>#include <vector>#include <queue>#include <map>