<div>
<div class="change-num">/</div>
<div class="box">
<div class="box-ul">
<div class="box-li">
<span></span>
<img src="http://pic71.nipic.com/file/20150610/13549908_104823135000_2.jpg">
</div>
<div class="box-li">
<span></span>
<img src="http://img.zcool.cn/community/0142135541fe180000019ae9b8cf86.jpg@1280w_1l_2o_100sh.png">
</div>
<div class="box-li">
<span></span>
<img src="http://img07.tooopen.com/images/20170316/tooopen_sy_201956178977.jpg">
</div>
<div class="box-li">
<span></span>
<img src="http://res.supervolleyball.com/1/advisoryrelease/jpg/0107c578-01c6-4205-b397-31afe7a88d87.jpg">
</div>
</div>
</div>
<div class="text-contet">
文字文字文字文字文字文字文字文字
</div>
</div> <script>
$(".text-contet").css("height", innerHeight - + 'px');
/*
* sX 记录每次点击的x轴位置
* mX 记录每次滑动结束时的x轴位置
* msX = mX - sX 每次滑动长度
* index 当前图片显示的序号
* num 图片的总数量
* lN 当前图片的偏移量
* nLN 移动成功后的图片left偏移量
*/
var changeNum = $(".change-num");
var boxs = $(".box");
var box = $(".box-ul");
var num = box.children(".box-li").length, index = ;
var sX, mX, msX, lN = , nLN = ;
boxs.on("touchstart", function (ev) {
ev = ev || event
ev.preventDefault();
sX = ev.originalEvent.changedTouches[].clientX;
}).on("touchmove", function (ev) {
ev = ev || event;
ev.preventDefault();
mX = ev.originalEvent.changedTouches[].clientX;
msX = mX - sX;
nLN = lN + msX;
        /*
        * 如果nLN大于0, 那么不可以滑动
        * 如果nLN小于(1 - num) * 360 , 那么不可以滑动
        */
if (nLN > ) nLN = ;
if (nLN < ( - num) * ) nLN = ( - num) * ;
box.css("left", nLN + 'px');
}).on("touchend", function (ev) {
ev = ev || event;
ev.preventDefault();
if (msX > ) {
          //右滑动
                nLN = lN + ;
index --;
}
else if (msX < -) {
        // 左滑动
                nLN = lN - ;
index ++;
}
else nLN = lN;
if (nLN > ) {
nLN =
index = ;
}
if (nLN < ( - num) * ) {
nLN = ( - num) * ;
index = num;
}
box.animate({ left: nLN + "px" }, );
        //图片滑动成功, 恢复默认值
            lN = nLN; mX = ; msX = ;
changeNum.text(index + "/" + num);
});
</script>
<style>
.box {
  width: 360px;
  height: 300px;
  overflow: hidden;
  background: #e5e5e5;
}
.box-ul {
  position: relative;
  height: 300px;
  left: 0;
  font-size: 0;
  white-space: nowrap;
}
.box-li {
  display: inline-block;
  vertical-align: middle;
  width: 360px;
  height: 300px;
  text-align: center;
}
.box-li > span {
  display: inline-block;
  vertical-align: middle;
  width: 0px;
  height: 300px;
}
.box-li > img {
  display: inline-block;
  vertical-align: middle;
  max-height: 300px;
  max-width: 360px;
}
.text-contet {
  -webkit-overflow-scrolling: touch;
  overflow-x: hidden;
  overflow-y: scroll;
  width: 360px;
}
</style>

使用jq 仿 swper 图片左右滚动的更多相关文章

  1. jquery图片滚动仿QQ商城带左右按钮控制焦点图片切换滚动

    jquery图片滚动仿QQ商城带左右按钮控制焦点图片切换滚动 http://www.17sucai.com/pins/demoshow/382

  2. jQuery练手:仿新浪微博图片文字列表淡进淡出上下滚动效果

    1.效果及功能说明 仿新浪微博图片文字列表上下淡进淡出间歇上下滚动 2.实现原理 首先要设定div内只能显示4个图片那么多出来的图片会自动隐藏然后在给图片添加一个动画的事件让他们可以滚动的播放出来上下 ...

  3. wpf 仿QQ图片查看器

    参考博客 WPF下的仿QQ图片查看器 wpf图片查看器,支持鼠标滚动缩放拖拽 实现效果 主要参考的WPF下的仿QQ图片查看器,原博主只给出了部分代码. 没有完成的部分 1.右下角缩略图是原图不是缩略图 ...

  4. jquery 文字滚动大全 scroll 支持文字或图片 单行滚动 多行滚动 带按钮控制滚动

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. JavaScript学习笔记5 之 计时器 & scroll、offset、client系列属性 & 图片无缝滚动

    一.计时器 setInterval ( 函数/名称 , 毫秒数 )表示每经过一定的毫秒后,执行一次相应的函数(重复) setTimeout ( 函数/名称 , 毫秒数 ) 表示经过一定的毫秒后,只执行 ...

  6. iOS开发之多图片无缝滚动组件封装与使用

    经常有园友会问"博主,有没有图片无限滚动的Demo呀?", 正儿八经的图片滚动的Demo我这儿还真没有,今天呢就封装一个可以在项目中直接使用的图片轮播.没看过其他iOS图片无限轮播 ...

  7. 精心挑选10款优秀的 jQuery 图片左右滚动插件

    在现代的网页设计中,图片和内容滑块是一种极为常见和重要的元素.你可以从头开始编写自己的滑动效果,但是这将浪费很多时间,因为网络上已经有众多的优秀的 jQuery 滑块插件.当然,如果要从大量的 jQu ...

  8. [转]Android 超高仿微信图片选择器 图片该这么加载

    快速加载本地图片缩略图的方法: 原文地址:Android 超高仿微信图片选择器 图片该这么加载 其示例代码下载: 仿微信图片选择器 ImageLoader

  9. jQuery图片无缝滚动JS代码ul/li结构

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. sqlmap注入入门

    sqlmap注入入门 sqlmap的用法: ​ linux中: sqlmap [选项] ​ Windows中: python sqlmap [选项] 常用的参数及含义: 目标 ​ -d DIRECT ...

  2. ssm多数据源配置

    1.在.properties配置文件中 添加第二个数据源信息(type2,driver2, url2,username2,pawwword2) 2.修改spring-context.xml(src/m ...

  3. JAVA之简单编程练习

    1.有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 解决思路:递归方法解决,兔子的规律为数列1,1,2,3,5,8 ...

  4. Leetcode-1.两数之和

    题目描述: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数 ...

  5. jmeter测试报告分析

    转载:http://www.cnblogs.com/miaomiaokaixin/p/6118081.html 在cmd中用命令行执行jmeter脚本: jmeter地址  -n -t  脚本地址  ...

  6. 自定义QGraphicsItem

    简述: QGraphicsItem 是场景中 item 的基类.图形视图提供了一些典型形状的标准 item,例如:矩形 ( QGraphicsRectItem ).椭圆 ( QGraphicsElli ...

  7. springboo+nginx测试负载均衡

    1:之前只是用nginx调用了boot_8044这一个服务,这次新建一个boot_8055服务,并在linux上启动: 两个boot我都是放在 /myprojects 目录下的(自定义,能启动就行) ...

  8. 启动Eclipse发生错误:An internal error occurred during: "Initializing Java Tooling".

    问题描述   由于上一次关闭 Eclipse 时没有正常关闭,再次启动 Eclipse 时报错:An internal error occurred during: "Initializin ...

  9. 初识C语言(五)

    自定义函数 C语言提供了大量的库函数(右侧资料下载中有),比如stdio.h提供输出函数,但是还是满足不了我们开发中的一些逻辑,所以这个时候需要自己定义函数,自定义函数的一般形式: 注意: 1.[]包 ...

  10. 【算法】Bert预训练源码阅读

    Bert预训练源码 主要代码 地址:https://github.com/google-research/bert create_pretraning_data.py:原始文件转换为训练数据格式 to ...