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

相关文章

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

python连接sqlite3简单用法完整例子

《python连接sqlite3简单用法完整例子》SQLite3是一个内置的Python模块,可以通过Python的标准库轻松地使用,无需进行额外安装和配置,:本文主要介绍python连接sqli... 目录1. 连接到数据库2. 创建游标对象3. 创建表4. 插入数据5. 查询数据6. 更新数据7. 删除

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知

Python yield与yield from的简单使用方式

《Pythonyield与yieldfrom的简单使用方式》生成器通过yield定义,可在处理I/O时暂停执行并返回部分结果,待其他任务完成后继续,yieldfrom用于将一个生成器的值传递给另一... 目录python yield与yield from的使用代码结构总结Python yield与yield

Java中使用 @Builder 注解的简单示例

《Java中使用@Builder注解的简单示例》@Builder简化构建但存在复杂性,需配合其他注解,导致可变性、抽象类型处理难题,链式编程非最佳实践,适合长期对象,避免与@Data混用,改用@G... 目录一、案例二、不足之处大多数同学使用 @Builder 无非就是为了链式编程,然而 @Builder

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

windows和Linux安装Jmeter与简单使用方式

《windows和Linux安装Jmeter与简单使用方式》:本文主要介绍windows和Linux安装Jmeter与简单使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows和linux安装Jmeter与简单使用一、下载安装包二、JDK安装1.windows设

CSS3 布局样式及其应用举例

《CSS3布局样式及其应用举例》CSS3的布局特性为前端开发者提供了无限可能,无论是Flexbox的一维布局还是Grid的二维布局,它们都能够帮助开发者以更清晰、简洁的方式实现复杂的网页布局,本文给... 目录深入探讨 css3 布局样式及其应用引言一、CSS布局的历史与发展1.1 早期布局的局限性1.2

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的