转载请说明出处:http://blog.csdn.net/wowkk/article/category/1619287 (创意系列)

/*最近项目须要苹果电脑,假设您支持学生创业并愿意赞助我们一台,请联系我QQ696619,您能够提前获取16页创意文档,或者我们能够帮助开发一些小项目*/

原本要做一种效果:上下左右滑动页面,能够切换到图片(表格布局)。

效果实现了,但还没应用上。

//--------图片滑动导航---------
var startX; //触摸起始横坐标
var startY; //触摸起始纵坐标
var moveSpave; //移动的距离
var isMoveX = true; //推断是否为左右移动
var isFirst = true; //是否要推断touchmove方向
$("#imgSelect").on("touchstart touchmove touchend touchcancel", function (e) {
e.preventDefault(); //该区域禁止滑动切换页面
if (e.originalEvent.type == "touchstart") {
startX = e.originalEvent.touches[0].pageX; //触摸起始位置赋值
startY = e.originalEvent.touches[0].pageY; //触摸起始位置赋值
isFirst = true;
}
else if (e.originalEvent.type == "touchmove") {
var moveX = e.originalEvent.touches[0].pageX
var moveY = e.originalEvent.touches[0].pageY;
if (isFirst) {
Math.abs(moveX - startX) - Math.abs(moveY - startY) >= 2 ? isMoveX = true : isMoveX = false;
isFirst = false;
return;
} if (isMoveX) {
//水平滑动
moveSpave = moveX - startX;
}
else {
//竖直滑动
moveSpave = moveY - startY;
} }
else if (e.originalEvent.type == "touchend") {
if (isMoveX) {
if (moveSpave < 0 && j <= 2) {
//向左滑动
Add("#topLight", j+1); //开关相应灯
j = j + 1;
}
else if (moveSpave > 0 && j >= 1) {
//向右滑动
Sub("#topLight", j+1);
j = j - 1;
}
}
else {
if (moveSpave < 0 && i <= 2) {
//向上滑动
Add("#rightLight", i + 1); //开关相应灯
i = i + 1;
}
else if (moveSpave > 0 && i >= 1) {
//向下滑动
Sub("#rightLight", i + 1); //开关相应灯
i = i - 1;
}
}
$("#imgClick").attr("src", arrImg[i][j]);
}

//------
function Add(id, x) {
var idd = id + x;
$(idd).attr("src", "img/Select_Off.png");
x = x + 1;
idd = id + x;
$(idd).attr("src", "img/Select_On.png");
}
function Sub(id, x) {
var idd = id + x;
$(idd).attr("src", "img/Select_Off.png");
x = x - 1;
idd = id + x;
$(idd).attr("src", "img/Select_On.png");
}

<span id="topLight"><!--横向指示灯-->
<img id="topLight1" src="img/Select_On.png" />
<img id="topLight2" src="img/Select_Off.png" />
<img id="topLight3" src="img/Select_Off.png" />
<img id="topLight4" src="img/Select_Off.png" />
</span>
<div id="rightLight"><!--竖向指示灯-->
<img id="rightLight1" class="rightImg" src="img/Select_Off.png" />
<img id="rightLight2" class="rightImg" src="img/Select_On.png" />
<img id="rightLight3" class="rightImg" src="img/Select_Off.png" />
<img id="rightLight4" class="rightImg" src="img/Select_Off.png" />
</div>

23web app实现上下左右滑动的更多相关文章

  1. Android上下左右滑动,显示底层布局

    转载博客地址:http://www.cnblogs.com/flyme2012/p/4106308.html 闲着没事做了一个小东西.Android的上下左右滑动,显示底层布局.可以做类似于QQ消息列 ...

  2. JavaScript之屏幕上下左右滑动监听

    前言 存在这么一个需求,根据用户在屏幕不同的滑动方向(上.下.左.右),使用js脚本判断出不同的滑动行为,更新网页为不同的界面. 源码 参考了博文[1]的源码,但由于存在一些漏洞,比如:上下滑动事件监 ...

  3. APP上下左右滑动屏幕的处理

    #获得机器屏幕大小x,y driver = self.driver def getSize(): x = driver.get_window_size()['width'] y = driver.ge ...

  4. App上下左右滑动封装

    #coding=utf-8 from appium import webdriver from time import sleep caps = { "platformName": ...

  5. [deviceone开发]-一个固定列,可以上下左右滑动的表格示例

    一.简介 一个类型table的例子,第一列和第二列可以固定,剩下的后面的很多列都可以左右滑动,也可以上下滑动,这种需求一般是为了展示多列表格数据.这个例子是通过二大部分: 左边是一个普通的listvi ...

  6. 每日一博 | 用 Ionic2 创建 App 启动页滑动欢迎界面

    原文  https://my.oschina.net/qinphil/blog/777787 效果如下,图片来自网络 本文例子和上图稍有不同,主要功能如下: 每滑动一下展示一张全屏图片: 滑动到最后一 ...

  7. Android监测手指上下左右滑动屏幕

    在开发android程序时,有时会需要监测手指滑动屏幕,当手指朝上下左右不同方向滑动时做出不同的响应,那怎么去实现呢? 利用Android提供的手势监测器就可以很方便的实现,直接上代码(已测试通过) ...

  8. app中页面滑动,防止a链接误触

    问题 app中list列表,当我们用手滑动屏幕,屏幕上页面内容会快速滚动,不会因为手已经离开了屏幕而滚动停止,突然手触摸暂停,当手指是在a标签上面时,会跳转链接,这对客户体验及其不好 思路 先判断滚动 ...

  9. Ionic2:创建App启动页滑动欢迎界面

    来自:https://my.oschina.net/qinphil/blog/777787 著作权归原创作者所有,如有再转,请自觉标明原创出处,以示尊重! 摘要: 每个有逼格的App在第一次启动时都有 ...

随机推荐

  1. STM32随记

    定时器(Timer): 分为高级,通用,基本三种. M3:8个 高级:TIM1,TM8 通用:TIM2~TIM5 基本:TIM6,TIM7 M0:8个 高级:TIM1 通用:TIM2,TIM3,TIM ...

  2. Forward reference vs. forward declaration

    Q:Im a bit confused. What is the difference between forward declaration and forward reference? Forwa ...

  3. SuperSocket与Netty之实现protobuf协议,包括服务端和客户端

    今天准备给大家介绍一个c#服务器框架(SuperSocket)和一个c#客户端框架(SuperSocket.ClientEngine).这两个框架的作者是园区里面的江大渔. 首先感谢他的无私开源贡献. ...

  4. 2016021801 - Java内存区域归纳对比

    线程私有 线程共享 程序计数器,虚拟机栈,本地方法栈 堆,方法区 内存区 异常 异常原因 程序计数器 无 虚拟机栈 StackOverflowError 线程请求的栈深度大于虚拟机栈所允许的深度 Ou ...

  5. button 垂直分布

    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];//button的类型 button.frame = CGRectMak ...

  6. Linux Kernel Makefile Test

    一.本文说明 本文为linux内核Makefile整体分析的续篇,是依据Linux内核Makefile体系的主要内容编写一个简要的测试工程.Linux内核Makefile体系就好像一只“大鸟”,而这篇 ...

  7. mongodb常用命令【转】

    mongodb由 C++编写,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理.关于它的一个最简洁描述为:scalable, high-performance, ...

  8. struts中如何将前台的值能在action中获取到

    如何获取值----三种方式(属性驱动,对象驱动,模型驱动)  A:属性驱动 必须生成get,set方法  B:对象驱动 给对象也必须生成get,set方法  c模型驱动 模型驱动需要action去实现 ...

  9. JavaWeb 文件上传 commons_fileupload方式

    import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileUploadExcept ...

  10. oracle中的一些函数笔记

    replace函数 replace(最长的字符串,被替换的字符串,替换字符串) 数学函数 round(n,[m]) 保留m位总共n位长度的数,采用四舍五入的方式. trunc(n,[m])截取数字,不 ...