jQuery插件--图片文字向上向左循环滚动
需要引用jquery
调用非常简单:
一、 向上滚动
$(".scroll_two").jScroll({vertical: true});
<div class="box scroll_two">
<ul>
<li><a href="#">声明</a>| <a href="#">农夫山泉关于公益捐赠的严正声明</a></li>
<li><a href="#">新车</a>| <a href="#">外观媲美轿车 全新一代奥德赛9月初亮相</a></li>
<li><a href="#">活动</a>| <a href="#">开启燕京啤酒清爽之旅,赢取万元单反相机</a></li>
<li><a href="#">探密</a>| <a href="#">亲历探寻长寿村莫斯利安的神奇之旅</a></li>
<li><a href="#">中房</a>| <a href="#">2009CIHAF第十一届中国住交会</a></li>
<li><a href="#">惠普</a>| <a href="#">你的打印机能省50%打印成本吗?</a></li>
</ul>
</div>
二、向左翻屏
$(".scroll_three").jScroll({speed: 2000, scroll: 3});
<div class="box scroll_three">
<ul>
<li><a href="#"><img src="data:images/1.jpg" width="130" height="107" alt="" /></a></li>
<li><a href="#"><img src="data:images/2.jpg" width="130" height="107" alt="" /></a></li>
<li><a href="#"><img src="data:images/3.jpg" width="130" height="107" alt="" /></a></li>
<li><a href="#"><img src="data:images/4.jpg" width="130" height="107" alt="" /></a></li>
<li><a href="#"><img src="data:images/5.jpg" width="130" height="107" alt="" /></a></li>
<li><a href="#"><img src="data:images/6.jpg" width="130" height="107" alt="" /></a></li>
</ul>
</div>
源码如下:
;(function($){
$.fn.extend({
"jScroll":function(o){
o = $.extend({
auto: 3000, //延迟时间(毫秒)
speed: 800, //单次滚动时长(毫秒)
vertical: false, //是否向上滚动(默认向左)
scroll: 1 //每次滚动的元素数量
},o);
var running = false, sizeCss = o.vertical ? "height" : "width", ulSize = 0;
var scrollTimer, scrollLen, itemSize, animCss, i;
var div = $(this), ul = div.find("ul"), li = ul.children("li");
div.css({overflow: "hidden"});
ul.css({margin: "0", padding: "0", display: "inline-block"});
li.css({"list-style-type": "none", float: o.vertical ? "none" : "left"});
//获取LI元素总宽(高)
for(i=0; i<=li.size()-1; i++){
itemSize = o.vertical ? li.eq(i).outerHeight() : li.eq(i).outerWidth();
ulSize+=itemSize;
}
var divSize = o.vertical ? div.height() : div.width(); //容器宽(高)
ul.css(sizeCss, (ulSize*2)+"px");
if(ulSize > divSize) running = true; //UL的宽(高)大于容的器宽(高)时才滚动
div.hover(function(){
clearInterval(scrollTimer);
},function(){
if(running){
scrollTimer = setInterval(function(){
scrollLen = 0;
itemSize = 0;
li = ul.children("li");
for(i=0; i<=o.scroll-1; i++){
itemSize = o.vertical ? li.eq(i).outerHeight() : li.eq(i).outerWidth();
scrollLen+=itemSize;
}
animCss = o.vertical ? {marginTop:-scrollLen +"px"} : {marginLeft:-scrollLen +"px"};
ul.animate(animCss, o.speed, function(){
ul.css(o.vertical ? "margin-top" : "margin-left", "0");
li.slice(0,o.scroll).appendTo(ul); //将前面的元素移至末尾
})
}, parseInt(o.auto+o.speed));
}
}).trigger("mouseleave"); //DOM加载完毕后自动执行hover(fn1, fn2)的fn2
}
});
})(jQuery);
jQuery插件--图片文字向上向左循环滚动的更多相关文章
- jquery插件图片延时加载实例详解
效果预览:http://keleyi.com/keleyi/phtml/image/index.htm 使用方法:1.导入JS插件 <script src="http://keleyi ...
- jquery插件之文字间歇自动向上滚动
该插件乃本博客作者所写,目的在于提升作者的js能力,也给一些js菜鸟在使用插件时提供一些便利,老鸟就悠然地飞过吧. 此插件旨在实现目前较为流行的文字间歇向上滚动特效,当鼠标移动到文字上时,向上滚动会停 ...
- jquery插件之文字无缝向上滚动
该插件乃本博客作者所写,目的在于提升作者的js能力,也给一些js菜鸟在使用插件时提供一些便利,老鸟就悠然地飞过吧. 此插件旨在实现目前较为流行的无缝向上滚动特效,当鼠标移动到文字上时,向上滚动会停止, ...
- jQuery插件:图片放大镜--jQuery Zoom
本文转载于http://blog.csdn.net/xinhaozheng/article/details/4085644, 这是一款非常不错的给图片添加放大镜效果,可以应用在诸如zen cart,m ...
- jQuery插件图片懒加载lazyload
来自XXX的前言: 什么是ImageLazyLoad技术 在页面上图片比较多的时候,打开一张页面必然引起与服务器大数据量的 交互.尤其是对于高清晰的图片,占的几M的空间.ImageLazyLoad技术 ...
- jquery插件——图片放大器
用到了JQzoom插件,可以使图片实现放大效果
- MFC入门(三)-- MFC图片/文字控件(循环显示文字和图片的小程序)
惯例附上前几个博客的链接: MFC入门(一)简单配置:http://blog.csdn.net/zmdsjtu/article/details/52311107 MFC入门(二)读取输入字符:http ...
- js实现点击上下按钮,图片向上向下循环滚动切换
//popup.js //jquery.1.4.2-min.js (function(p,j){function u(){if(!c.isReady){try{v.documentElement.do ...
- jQuery插件 -- 图片随页面滚动fixed
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- Linux1_Ubuntu的安装
安装Ubuntu双系统大致有两种方式: 如果是Vmware+linux系统的话,先下载个securable.exe监测本机是否支持虚拟机的安装 1) wubi.exe安装(13.*版本不支持)2) 刻 ...
- parse arguments in bash
There are lots of ways to parse arguments in sh. Getopt is good. Here's a simple script that parses ...
- WebView加载URL跳转到系统浏览器的解决方法
1.问题 webview加载url跳转到系统浏览器,用户体验非常的差 2.解决方法 重写WebViewClient的shouldOverrideUrlLoading(WebView view, Str ...
- JUNIT单元测试时统计代码的覆盖率工具eclemma安装
EclEmma是Eclipse里的一个插件,安装简单,覆盖率显示直观.安装EclEmma.打开Eclipse,点击Help → Software Updates → Find and Install, ...
- Jmeter + Ant + Jenkins 接口/性能测试,持续集成环境搭建
1. 安装Jmeter.jdk Jmeter 3.3版本 :<http://note.youdao.com/noteshare?id=5e3fd287db24d08386207a7de22d26 ...
- 软件测试人员需要精通的开发语言(1)--- VBScript
软件测试不局限于点点点的纯黑盒测试,提升自身的代码能力也是事关重要的.软件测试的发展,越来越多的公司对于测试人员的要求也日益提高,测试人员必备开发能力的优势也凸显出来.简单的介绍下部分开发语言的学习及 ...
- EasyDarwin开源流媒体服务器Golang版本:服务端录像功能发布
EasyDarwin开源流媒体服务器(www.easydarwin.org)现在使用Go版本实现了.最新的代码提交,已经支持了推流(或者拉流)的同时进行本地存储. 本地存储的原理,是在推流的同时启动f ...
- Sql注入_类型
1.sql注入 通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. 2.sql注入类型 按照注入点类型来分类 (1)数字型注入点 在 Web ...
- 【python】-- Redis简介、命令、示例
Redis简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化 ...
- 内存使用分析工具Valgrind简单用法
转载自 http://www.cnblogs.com/sunyubo/archive/2010/05/05/2282170.html 暂时还未使用过,记录下,记录下,记录下 Valgrind的主要作者 ...