手机看html网页内容重叠,html5手机端叠加图片触屏滑动查看特效
特效描述:html5手机端 叠加图片 触屏滑动查看特效。html5手机叠加图片手指滑动查看
代码结构
1. 引入CSS
2. 引入JS
3. HTML代码
![](img/1.jpg)
rutrum tellus a tempus :)
![](img/3.jpg)
litora torquent per conubia
![](img/2.jpg)
sed consectetur faucibus
![](img/4.jpg)
eleifend tempus justo
window.addEventListener('load', onWndLoad, false);
function onWndLoad() {
var slider = document.querySelector('.slider');
var sliders = slider.children;
var initX = null;
var transX = 0;
var rotZ = 0;
var transY = 0;
var curSlide = null;
var Z_DIS = 50;
var Y_DIS = 10;
var TRANS_DUR = 0.4;
var images = document.querySelectorAll('img');
for (var i = 0; i < images.length; i++) {
if (window.CP.shouldStopExecution(1)) {
break;
}
images[i].onmousemove = function (e) {
e.preventDefault();
};
images[i].ondragstart = function (e) {
return false;
};
}
window.CP.exitedLoop(1);
function init() {
var z = 0, y = 0;
for (var i = sliders.length - 1; i >= 0; i--) {
if (window.CP.shouldStopExecution(2)) {
break;
}
sliders[i].style.transform = 'translateZ(' + z + 'px) translateY(' + y + 'px)';
z -= Z_DIS;
y += Y_DIS;
}
window.CP.exitedLoop(2);
attachEvents(sliders[sliders.length - 1]);
}
function attachEvents(elem) {
curSlide = elem;
curSlide.addEventListener('mousedown', slideMouseDown, false);
curSlide.addEventListener('touchstart', slideMouseDown, false);
}
init();
function slideMouseDown(e) {
if (e.touches) {
initX = e.touches[0].clientX;
} else {
initX = e.pageX;
}
document.addEventListener('mousemove', slideMouseMove, false);
document.addEventListener('touchmove', slideMouseMove, false);
document.addEventListener('mouseup', slideMouseUp, false);
document.addEventListener('touchend', slideMouseUp, false);
}
var prevSlide = null;
function slideMouseMove(e) {
var mouseX;
if (e.touches) {
mouseX = e.touches[0].clientX;
} else {
mouseX = e.pageX;
}
transX += mouseX - initX;
rotZ = transX / 20;
transY = -Math.abs(transX / 15);
curSlide.style.transition = 'none';
curSlide.style.webkitTransform = 'translateX(' + transX + 'px)' + ' rotateZ(' + rotZ + 'deg)' + ' translateY(' + transY + 'px)';
curSlide.style.transform = 'translateX(' + transX + 'px)' + ' rotateZ(' + rotZ + 'deg)' + ' translateY(' + transY + 'px)';
var j = 1;
for (var i = sliders.length - 2; i >= 0; i--) {
if (window.CP.shouldStopExecution(3)) {
break;
}
sliders[i].style.webkitTransform = 'translateX(' + transX / (2 * j) + 'px)' + ' rotateZ(' + rotZ / (2 * j) + 'deg)' + ' translateY(' + Y_DIS * j + 'px)' + ' translateZ(' + -Z_DIS * j + 'px)';
sliders[i].style.transform = 'translateX(' + transX / (2 * j) + 'px)' + ' rotateZ(' + rotZ / (2 * j) + 'deg)' + ' translateY(' + Y_DIS * j + 'px)' + ' translateZ(' + -Z_DIS * j + 'px)';
sliders[i].style.transition = 'none';
j++;
}
window.CP.exitedLoop(3);
initX = mouseX;
e.preventDefault();
if (Math.abs(transX) >= curSlide.offsetWidth - 30) {
document.removeEventListener('mousemove', slideMouseMove, false);
document.removeEventListener('touchmove', slideMouseMove, false);
curSlide.style.transition = 'ease 0.2s';
curSlide.style.opacity = 0;
prevSlide = curSlide;
attachEvents(sliders[sliders.length - 2]);
slideMouseUp();
setTimeout(function () {
slider.insertBefore(prevSlide, slider.firstChild);
prevSlide.style.transition = 'none';
prevSlide.style.opacity = '1';
slideMouseUp();
}, 201);
return;
}
}
function slideMouseUp() {
transX = 0;
rotZ = 0;
transY = 0;
curSlide.style.transition = 'cubic-bezier(0,1.95,.49,.73) ' + TRANS_DUR + 's';
curSlide.style.webkitTransform = 'translateX(' + transX + 'px)' + 'rotateZ(' + rotZ + 'deg)' + ' translateY(' + transY + 'px)';
curSlide.style.transform = 'translateX(' + transX + 'px)' + 'rotateZ(' + rotZ + 'deg)' + ' translateY(' + transY + 'px)';
var j = 1;
for (var i = sliders.length - 2; i >= 0; i--) {
sliders[i].style.transition = 'cubic-bezier(0,1.95,.49,.73) ' + TRANS_DUR / (j + 0.9) + 's';
sliders[i].style.webkitTransform = 'translateX(' + transX + 'px)' + 'rotateZ(' + rotZ + 'deg)' + ' translateY(' + Y_DIS * j + 'px)' + ' translateZ(' + -Z_DIS * j + 'px)';
sliders[i].style.transform = 'translateX(' + transX + 'px)' + 'rotateZ(' + rotZ + 'deg)' + ' translateY(' + Y_DIS * j + 'px)' + ' translateZ(' + -Z_DIS * j + 'px)';
j++;
}
document.removeEventListener('mousemove', slideMouseMove, false);
document.removeEventListener('touchmove', slideMouseMove, false);
}
}
手机看html网页内容重叠,html5手机端叠加图片触屏滑动查看特效相关推荐
- 手机游戏缺少index_264.html,html5手机端大家来找茬微信小游戏代码
特效描述:html5 手机端大家来找茬 微信小游戏代码.html5手机端大家来找茬微信小游戏代码 代码结构 1. HTML代码 重新开始 剩余时间: 30 s 分数: 0 点 击 开 始 游 戏 护眼 ...
- CSS3手机端侧滑菜单 4种滑动菜单特效
详细内容请点击 这是一款基于CSS3的手机端侧滑菜单,一共有4种侧滑动画特效.这款CSS3菜单的特点是鼠标划过时即可以各种动画方式展开和隐藏菜单项,该动画方式由CSS3中的transition-del ...
- 机械厂html5手机模板,营销型机械消费设备企业通用织梦模板(带html5手机端) v1.0...
营销型机械消费设备企业通用织梦模板简介 营销型机械消费设备企业通用织梦模板(带html5手机端)v1.0是一个自适应手机端和PC端的最新版织梦V5.7为内核的网站模板,软件兼容主流浏览器,模板包含安装 ...
- table 手机 滑动_【推荐下载】html5手机端手指滑动选项卡滚动切换效果(转)
html5 手机端手指滑动选项卡滚动切换效果 ( 转 ) 2017/09/25 41 !DOCTYPE html html lang="en" head meta charset= ...
- 手机html5翻页效果代码,jquery html5手机端翻书效果_手指滑动书本翻页效果代码
特效描述:jquery html5手机端翻书 手指滑动 书本翻页效果.显现手机端翻书效果,支持手拖动翻页 代码结构 1. 引入JS 2. HTML代码 function loadApp() { // ...
- html手机自动放大,解决HTML5手机端页面缩放的问题
通常在写HTML5手机端页面的时候,我们会发现页面所显示元素的比例不正确,那此时我们需要添加的就是: 或者是 那么我们来对这句话解释一下就是: viewport : 表示的是显示窗口: width=d ...
- html页面手机自动缩放,解决HTML5手机端页面缩放的问题
通常在写HTML5手机端页面的时候,我们会发现页面所显示元素的比例不正确,那此时我们需要添加的就是: 或者是 那么我们来对这句话解释一下就是: viewport : 表示的是显示窗口: width=d ...
- php html5手机端多张图片上传,php+html5兼容手机端的图片选取裁剪上传实例
网上大多图片上传插件都不带裁剪功能,这个是php+html5实现的兼容手机端的图片选取裁剪上传实例,分享出来希望能帮到大家. 首先放置一个上传按钮及相关预览信息等 注意:上传前,先截图 文件大小 类型 ...
- html5电子杂志页面案例,html5电子杂志支持手机端触屏滑动翻书效果
特效描述:html5电子杂志 支持手机端 触屏滑动 翻书效果.html5手机电子杂志,触屏滑动电子杂志翻书动画特效 代码结构 1. 引入JS 2. HTML代码 function loadApp() ...
最新文章
- css媒体查询标准,CSS 媒体查询 - 实例
- iOS上的jQuery.on()冒泡事件绑定 以及 iOS绝对定位元素中的输入框
- Swift之深入解析内存管理的底层原理
- Fedora 24的用户,千万不要在桌面里运行 `dnf update`
- [UE4]C++中extern关键字浅谈
- Java中的低GC:使用原语而不是包装器
- linux系统的4个部分,以下是Linux文件系统的4个相关的结构定义中的一部分: Struct i..._考试资料网...
- 乐高ev3涉及到的一些赛事_使您成为英雄的前五名开发者技能(提示:涉及LEGO)
- 第四章类和对象 习题答案
- 将windows7安装到映像文件方法总结
- Xshell官网下载地址
- ios常用第三方总结
- 复杂性思维第二版 三、小世界图
- cesium 加载fbx模型
- 【题解】P3939数颜色
- 研究生计算机专业笔记本配置要求,大学生买什么电脑好?电脑配置及选择方法全解析...
- 基于BP神经网络算法的实现静态图片和视频人脸识别、性别识别
- 鸿蒙 手游sdk 开发教程
- 关于用同一个Form写编辑和添加的VUE报错
- Linux服务器架设之FTP
热门文章
- mysql 前缀_MySQL最佳实践:匹配前缀
- 孤立森林-一个通过XJB乱分进行异常检测的算法
- white/black-box attack(黑盒白盒攻击基础)
- 【音视频基础】(十三):YUV颜色空间之YUV和YCbCr
- uniq用法linux,linux之uniq用法
- vue2引入阿里巴巴矢量图标库字体
- python编程课程-吐血整理!程序员喜爱的13个免费Python课程
- 【算法】微信随机红包方案--实现
- UAP开发步骤详解(很详细)--③单据向导完善
- 在C++中++x和x++的用法