div+css+jQuery图片横向滚动代码(带左右点击按钮)
首先感谢Blue老师的javascript教程,给了我很多的启发,这是我在看完10 - 定时器的使用 - 2这节视频后,自己试着用jQuery重新改写了一下代码,感觉至少比百度搜出来的那一坨靠谱多了,上代码:
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src = "jquery_v1.7.2.js"></script>
<script type="text/javascript">
$(document).ready(function (){
/*=============
Author:Gino
Blog:http://www.cnblogs.com/ginowang42
Thanks:@Blue--http://www.zhinengshe.com/video.html#1
Name:jQuery插件图片左右无缝滚动
Arguments:
@leftBtn:向左滚动按钮DOM引用
@rightBtn:向右滚动按钮DOM引用
@speed:滚动速度(每次滚动像素数)
CSS keyed Attribute:
#noSeamScroll{position:relative;overflow:hidden;}
#noSeamScroll ul{position:absolute;}
#noSeamScroll ul li {float:left;}
===============*/
$.fn.extend({noSeamScroll:function (leftBtn,rightBtn,speed){
var timeFlag = speed = speed || 4;;
var timer = null;
var _this = this;//把this重新保存在一个私有变量里面,以防止setInterval误把this指向了window
this.oUl = $("ul",this);
this.oUl.html(this.oUl.html() + this.oUl.html());//把li复制一份
this.oLis = $("ul li",this);//之后再变量保存li的全部节点
this.oUl.width(this.oLis.eq(0).outerWidth(true)*this.oLis.length + "px");
var fnMove = function (){
$("ul",_this).css("left",function (){
if ($(this).position().left > 0){//这里的this指的是$("ul",element)
return -$(this).outerWidth(true)/2 + "px";
}
if ($(this).position().left < -$(this).outerWidth(true)/2 ){
return "0px";
}
return $(this).position().left + timeFlag + "px";
})
} timer = setInterval(fnMove,30); this.mouseover(function () {clearInterval(timer);});
this.mouseout(function () {timer = setInterval(fnMove,30)}); leftBtn.click(function (){
clearInterval(timer);
timeFlag = -speed;
timer = setInterval(fnMove,30);
})
rightBtn.click(function (){
clearInterval(timer);
timeFlag = speed;
timer = setInterval(fnMove,30);
}) }
}); //test
$("#noSeamScroll").noSeamScroll($("#leftArr"),$("#rightArr"),2); }) </script>
<style type="text/css">
*{margin:0;padding:0;}
#noSeamScroll{width:752px;height:108px;margin:20px auto;position:relative;overflow:hidden;}
#noSeamScroll ul{position:absolute;list-style:none;}
#noSeamScroll ul li {float:left;width:178px;height:108px;margin-right:10px;} </style>
</head>
<body>
<a href="javascript:;" id="leftArr">向左移动</a>
<a href="javascript:;" id="rightArr">向右移动</a>
<div id = "noSeamScroll">
<ul>
<li><img src="data:images/1.jpg" alt="" /></li>
<li><img src="data:images/2.jpg" alt="" /></li>
<li><img src="data:images/3.jpg" alt="" /></li>
<li><img src="data:images/4.jpg" alt="" /></li> </ul>
</div>
</body>
</html>
div+css+jQuery图片横向滚动代码(带左右点击按钮)的更多相关文章
- jquery图片无缝滚动代码左右 上下无缝滚动图片
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jQuery图片无缝滚动
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jQuery图片无缝滚动JS代码ul/li结构
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- DIV+CSS制作二级横向弹出菜单,略简单
没有使用JavaScript控制二级菜单的显示,结果如上图所示. 代码如下: <!DOCTYPE html> <html> <head> <meta char ...
- flash滑杆控制图片横向滚动
flash滑杆控制图片横向滚动是一款FLASH动画图片左右滚动素材,滑杆控制滚动,效果很酷,带FLASH源文件. 下载:http://www.huiyi8.com/sc/9452.html
- 精心挑选10款优秀的 jQuery 图片左右滚动插件
在现代的网页设计中,图片和内容滑块是一种极为常见和重要的元素.你可以从头开始编写自己的滑动效果,但是这将浪费很多时间,因为网络上已经有众多的优秀的 jQuery 滑块插件.当然,如果要从大量的 jQu ...
- jQuery 1.9 Ajax代码带注释
/* -----------ajax模块开始 -----------*/ var // Document location ajaxLocParts, ajaxLocation, ajax_nonce ...
- 用DIV+Css+Jquery 实现的旧版微信飞机大战。
用jquery 实现的旧版微信飞机大战. 以前一直都是做后台和业务逻辑,前端很少去做, 现在个小游戏. 方向键控制方向,Ctrl 键 放炸弹(当然你的有炸弹,哈哈)! 主要都是用div+Css实现的, ...
- DIV+CSS常用的网页布局代码
单行一列以下是引用片段:body { margin: 0px; padding: 0px; text-align: center; }#content { margin-left:auto; marg ...
随机推荐
- [ActionScript 3.0] AS3 Socket安全沙箱策略文件
当与一个主机建立一个Socket连接时,Flash Player要遵守如下安全沙箱规则: 1.Flash的.swf文件和主机必须严格的在同一个域名,只有这样才可以成功建立连接: 2.一个从网上发布的. ...
- topngroupcollector
分类的字段int f1 /* key: f1 * value: doc * size: top n */ map<int, doc>() if(map.size==n) buildOrde ...
- 朗逸2011款 1.4t 清除保养告警灯
朗逸2011款 1.4t 清除保养告警灯 Posted on 2015-03-01 21:06 编辑 仪表盘上有两个按钮 按住右边set键,钥匙旋转到通电状态,保持2s. 放掉set,按左边的切换按钮 ...
- font awesome的图标在WP8浏览器下无法显示的问题解决
font awesome无疑是bootstrap上面做的很赞第三方图标 笔者最近做的一个项目,图标在iphone和安卓上面的浏览器上显示都无问题,偏偏WP8上的浏览器显示有问题 通过chrome的开发 ...
- (easy)LeetCode 258.Add Digits
Given a non-negative integer num, repeatedly add all its digits until the result has only one digit. ...
- reverse list
public void reverse (){ Node end =null,p,q; p=head; //p代表当前节点,end代表翻转后p后面的,q代表翻转前p后面的 while(p!=null) ...
- Node.js发送邮件
1.使用nodemailer模块 var nodemailer = require("nodemailer"); 2.代码如下 exports.send_email = funct ...
- 利用Jersey构建REST之入门实例
一.依赖包 1.目录结构如下:
- locals()函数访问当前还在作用范围内的局部变量
>>> element = 'silver' >>> number = 47 >>> 'Element {number} is {element} ...
- CODESOFT 2015中的条形码对象该如何创建
CODESOFT条码设计软件提供了大量适应行业要求的符号,以及创建二维条形码的选项.用户可以通过条形码对话框选择符号.定义其属性以及输入要编码的消息.下面小编带大家具体学习下如何在CODESOFT ...