基于jquery的无缝循环新闻列表插件


Posted in Javascript onMarch 07, 2011

一、效果图:
基于jquery的无缝循环新闻列表插件
tips源码下载 http://xiazai.3water.com/201103/yuanma/jquerynewslist.rar
二、jquery源码:

(function($){ 
$.fn.extend({ 
newsList:function(options){ 
var defaults ={ 
actName:'li', //显示条数名; 
maxShowNum:'6', //最多的显示条数; 
actNameH:'28', //一次移动的距离; 
ulClass:'.ul_news_list', //被复制层的class 
copyUlClass:'.ul_news_list2', //复制层的class 
autoTime:'1500', //自动运行时间; 
clickGoUpC:'.go_uplist', //点击向上class; 
clickDownUpC:'.go_downlist', //点击向下class; 
goStart:'go_tart', 
autoCloss:'flase' //自动运行开关,当为'flase'时为开,其它则关; 
} ; options = $.extend(defaults, options); 
return this.each(function(){ 
var o = options; 
var counts =1; 
var linum = $($(this).find(o.actName),$(this)).size(); 
var ul_class = $($(this).find(o.ulClass),$(this)); 
var copy_ul_class = $($(this).find(o.copyUlClass),$(this)); 
var click_go_up_c = $($(this).find(o.clickGoUpC),$(this)); 
var click_go_down_C = $($(this).find(o.clickDownUpC),$(this)); 
var go_start = $($(this).find(o.goStart),$(this)); 
if(linum > o.maxShowNum){ 
$(copy_ul_class).html($(ul_class).html()); 
goStartList(); 
} 
var thiswrap = $($(ul_class).parent().parent(),$(this)); 
//自动运行函数 
function auto_function(){ 
if(counts <= linum){ 
$(ul_class).animate({top:'-=' + o.actNameH},o.autoTime); 
$(copy_ul_class).animate({top:'-=' + o.actNameH},o.autoTime); 
counts++; 
}else{ 
$(ul_class).animate({top:0},0); 
$(copy_ul_class).animate({top:0},0); 
counts = 1; 
} 
} 
//点击向上移动时; 
if(linum > o.maxShowNum){ 
$(click_go_up_c).click(function(){ 
if(counts <= linum){ 
$(ul_class).animate({top:'-=' + o.actNameH},0); 
$(copy_ul_class).animate({top:'-=' + o.actNameH},0); 
counts++; 
}else{ 
$(ul_class).animate({top:0},0); 
$(copy_ul_class).animate({top:0},0); 
counts = 1; 
} 
}); 
} 
//点击向下移动时; 
if(linum > o.maxShowNum){ 
$(click_go_down_C).click(function(){ 
if(counts > 1){ 
counts--; 
$(ul_class).animate({top:'-'+ counts*o.actNameH},0); 
$(copy_ul_class).animate({top:'-'+ counts*o.actNameH},0); 
}else{ 
$(ul_class).animate({top:0},0); 
$(copy_ul_class).animate({top:0},0); 
counts = linum+1; 
} 
}); 
} 
//鼠标经过所发生的开始停止; 
if(linum > o.maxShowNum){ 
$(thiswrap).hover(function(){ 
goStopList(); 
},function(){ 
goStartList(); 
}); 
} 
function goStartList(){ 
if(o.autoCloss === 'flase'){ 
go_start = setInterval(auto_function,o.autoTime); 
} 
} 
function goStopList(){ 
clearInterval(go_start); 
} 
}); 
} 
}); 
}(jQuery));

三、HTML:
<script language="javascript"> 
$(document).ready(function(){ 
$("#newslist").newsList(); 
}); 
</script> <div id="newslist"> 
<div class="go_upanddown"><span class="go_uplist"><img src="images/newslist/goupbtn.gif" /></span><span class="go_downlist"><img src="images/newslist/godownbtn.gif" /></span></div> 
<div class="news_list_bar"> 
<ul class="ul_news_list"> 
<li><a href="#">1、曾参加过唐山、汶川、玉树地震救援的援</a><a href="#">曾参加过唐,又来到了舟曲参加救援</a></li> 
<li><a href="#">2、摩洛哥塞拉,艺术家在一场为流浪儿童为流浪儿童为流浪儿童为流浪儿童募捐的马戏节目中表演</a></li> 
<li><a href="#">3、昆明警方近日县的“洪兴甸县的“洪兴甸县的“洪兴甸县的“洪兴帮”黑恶势力团伙,缴获...</a></li> 
<li><a href="#">4、印度克什知自己的孩子在骚乱中丧生时痛不欲生..</a><a href="#">曾参加过唐曾参加过唐到了舟曲参加救援</a></li> 
<li><a href="#">5、明昆明警方近日捣毁了寻甸县的“洪兴帮”黑恶势力团伙,缴获...</a></li> 
<li><a href="#">6、曾参加过唐曾参加过唐曾参加过唐曾参加过唐</a></li> 
<li><a href="#">7、湖北武汉汉口汉口曾参加过唐曾参加过唐曾参加过唐曾参加过唐观看两江洪峰过</a></li> 
<li><a href="#">8、湖北武汉汉曾参加过唐曾参加过唐曾参加过唐曾参加过唐集在江边观</a></li> 
<li><a href="#">9、湖北武汉汉口汉口龙王庙景区观景平台上,市民聚集在江边观看两江洪峰过汉</a></li> 
</ul> 
<ul class="ul_news_list2"></ul> 
</div> 
</div>

四、CSS:
body { font-family:"微软雅黑",Arial,"Lucida Grande", Verdana, Lucida; font-size:12px; } 
*{ padding:0; margin:0;} 
img { border:0;} 
.clear { clear:both;} 
a { color:#000; text-decoration:none;} 
a:hover { color:#EC6104; text-decoration:none;} 
.undis { display:none;}/*news_list*/ 
.news_list_bar { position:relative; width:560px; height:168px; overflow:hidden; background:url(../images/slideshow2/v3_picture6.gif) repeat-y; background-color:#F00;} 
.ul_news_list, 
.ul_news_list2{ position:relative; list-style:none;} 
.ul_news_list li, 
.ul_news_list2 li{line-height:28px; height:28px; width:500px; overflow:hidden; white-space:nowrap;padding:0 20px;} 
.ul_news_list li a, 
.ul_news_list2 li a{ padding-right:20px;} 
.go_upanddown { position:absolute; margin:-20px 0 0 500px;} 
.go_upanddown span { padding-right:10px; cursor:pointer;}
Javascript 相关文章推荐
js去除重复字符串两种实现方法
Jan 09 Javascript
jquery自动填充勾选框即把勾选框打上true
Mar 24 Javascript
JavaScript获取并更改input标签name属性的方法
Jul 02 Javascript
JS控制静态页面传递参数并获取参数应用
Aug 10 Javascript
BootStrap中Datepicker控件带中文的js文件
Aug 10 Javascript
Bootstrap实现的标签页内容切换显示效果示例
May 25 Javascript
本地存储localStorage用法详解
Jul 31 Javascript
js原生日历的实例(推荐)
Oct 31 Javascript
还不懂递归?读完这篇文章保证你会懂
Jul 29 Javascript
使用element-ui的el-menu导航选中后刷新页面保持当前选中状态
Jul 19 Javascript
写给新手同学的vuex快速上手指北小结
Apr 14 Javascript
vue tab切换,解决echartst图表宽度只有100px的问题
Jul 19 Javascript
JavaScript对象之间的转换 jQuery对象和原声DOM
Mar 07 #Javascript
jQuery总体架构的理解分析
Mar 07 #Javascript
关于捕获用户何时点击window.onbeforeunload的取消事件
Mar 06 #Javascript
js中将具有数字属性名的对象转换为数组
Mar 06 #Javascript
js 优化次数过多的循环 考虑到性能问题
Mar 05 #Javascript
淘宝搜索框效果实现分析
Mar 05 #Javascript
再论Javascript下字符串连接的性能
Mar 05 #Javascript
You might like
Linux下手动编译安装PHP扩展的例子分享
2014/07/15 PHP
Yii框架获取当前controlle和action对应id的方法
2014/12/03 PHP
php对象在内存中的存在形式分析
2015/02/03 PHP
php封装的数据库函数与用法示例【参考thinkPHP】
2016/11/08 PHP
PHP实现webshell扫描文件木马的方法
2017/07/31 PHP
封装好的省市地区联动控件附下载
2007/08/13 Javascript
window.name代替cookie的实现代码
2010/11/28 Javascript
javascript中删除指定数组中指定的元素的代码
2011/02/12 Javascript
js动态添加onload、onresize、onscroll事件(另类方法)
2012/12/26 Javascript
jQuery获取某天的农历日期并判断是否除夕或新年的方法
2016/03/01 Javascript
JS DOM实现鼠标滑动图片效果
2020/09/17 Javascript
jQuery中JSONP的两种实现方式详解
2016/09/26 Javascript
js实现砖头在页面拖拉效果
2020/11/20 Javascript
使用vue.js实现checkbox的全选和多个的删除功能
2017/02/17 Javascript
详解组件库的webpack构建速度优化
2018/06/18 Javascript
关于js对textarea换行符的处理方法浅析
2018/08/03 Javascript
IE8中jQuery.load()加载页面不显示的原因
2018/11/15 jQuery
TypeScript中使用getElementXXX()的示例代码
2019/09/12 Javascript
关于angular浏览器兼容性问题的解决方案
2020/07/26 Javascript
解决vue net :ERR_CONNECTION_REFUSED报错问题
2020/08/13 Javascript
python通过ElementTree操作XML获取结点读取属性美化XML
2013/12/02 Python
Python读取一个目录下所有目录和文件的方法
2016/07/15 Python
Windows下安装python MySQLdb遇到的问题及解决方法
2017/03/16 Python
Python实现字典按key或者value进行排序操作示例【sorted】
2019/05/03 Python
Python + selenium + crontab实现每日定时自动打卡功能
2020/03/31 Python
Django Model层F,Q对象和聚合函数原理解析
2020/11/12 Python
python自动化办公操作PPT的实现
2021/02/05 Python
联想哥伦比亚网上商城:Lenovo Colombia
2017/01/10 全球购物
Myprotein西班牙官网:欧洲第一大运动营养品牌
2020/02/24 全球购物
机修工岗位职责
2013/11/24 职场文书
师德师风个人整改措施
2014/10/27 职场文书
2014年监理个人工作总结
2014/12/11 职场文书
干部年终考核评语
2015/01/04 职场文书
展览会邀请函
2015/02/02 职场文书
一个独生女的故事观后感
2015/06/04 职场文书
导游词之江南周庄
2019/12/06 职场文书