<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. C++ 常见面试题目

    const作用 (1)可以定义const常量,具有不可变性. (2)便于进行类型检查.(而宏不会进行类型检查). (3)可以保护被修饰的东西,防止意外的修改. (4) 可以节省空间. static作用 ...

  2. 使用 “mini-css-extract-plugin” 提取css到单独的文件

    一.前言 我们在使用webpack构建工具的时候,通过style-loader,可以把解析出来的css通过js插入内部样式表的方式到页面中,插入的结果如下: <style> .wrappe ...

  3. Ubuntu下使用Sublime Text 3配置Python开发环境

    因为电脑配置有些低端,所以只能使用Sublime来当作Python的IDE. 1.下载Sublime Text 3并安装 首先去官网找到64位的.tar.bz2的压缩文件下载: 使用命令或归档管理器将 ...

  4. Spring Cloud 2-Bus 消息总线(九)

    Spring Cloud  Bus  1.服务端配置 pom.xml application.yml 2.客户端配置 pom.xml application.yml Controller.java 3 ...

  5. 24 Game

    You have 4 cards each containing a number from 1 to 9. You need to judge whether they could operated ...

  6. 借助 LVS + Keepalived 实现负载均衡

    虽然现在云手段很高明了.但是这个lvs + keepalive 还是需要了解下的. 今天就整理了下lvs和keepalive的东西.做下总结留作以后怀念 在实际应用中,在Web服务器集群之前总会有一台 ...

  7. ubuntu 18.04 配置远程ssh/远程ftp/远程vnc登陆

    18.04相比过去采用了新的桌面,配置环境稍微有一些不同了. 首先是远程登录,windows用Tera Trem连接,ip地址得自己根据实际情况来. ubuntu上,sudo apt-get inst ...

  8. Shell学习笔记(二)

    if 语句 最简单的用法就是只使用 if 语句,它的语法格式为: if condition then statement(s) fi condition是判断条件,如果 condition 成立(返回 ...

  9. python学习第30天

    tcp协议的socket server 并发效果验证客户端的合法性socket模块还有一些其他的方法

  10. zigbee 信道

      以zigbee  nxp5169 信道是:11-26    15d0f1-170923    15 ----- 信道 d0f1--- 是zigbee 物理地址 170923---时间2017年9月 ...