欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

jQuery无缝滚动插件支持图片无缝滚动或文字无缝滚动-20130708

程序员文章站 2022-07-12 23:43:39
...
1、效果及功能说明
导航菜单插件制作当鼠标滑过显示二级下拉菜单目录子内容,这是一款轻量级的jquery菜单插件非常实用

2、实现原理

首先是设定文字滚动的速度,然后设定每一行文字的高度,接下来来定义文字的自动滚动和当滚动完成一轮后新的文字从最下方出来最上的文字消失每次从下方出现设定为一条文字并且控制文字是从想下往上的滚动方式,最后在定义一个伪类当鼠标触及到文字时所有滚动效果停止,当鼠标离开文字后重新计算新的滚动时间并开始重新滚动的效果

3、效果图


jQuery无缝滚动插件支持图片无缝滚动或文字无缝滚动-20130708
            
    
    博客分类: 学习前端技术jQuery findeachoptssetInterval 

4、运行环境

IE6 IE7 IE8及以上 Firefox 和 Google Chrome游览器下都可实现


5、所有图片的压缩包新建一个文件后将包解压放进文件夹图片的压缩包在页面的最下方可以看到并下载下载后无需修改文件夹名因为本身就已经写好了和html5内的路径相吻合

6、将创建html文件保存的时候将编码类型换成(UTF-8有签名)这样可以让部分中文正常的显示出来,将保存类型(T)换成(所有文件(*.*)),将html5和解压后的图片文件夹放在同一个文件夹内效果

7、代码[html5]

<!DOCTYPE htm>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jquery无缝滚动插件支持图片无缝滚动或文字无缝滚动</title>
</head>

<body>

<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
(function($){

	$.fn.myScroll = function(options){
	//默认配置
	var defaults = {
		speed:40,  
		//滚动速度,值越大速度越慢
		rowHeight:24 
		//每行的高度
	};
	
	var opts = $.extend({}, defaults, options),intId = [];
	//定义参数
	function marquee(obj, step){
	//定义带参数的方法
		obj.find("ul").animate({
		//调用动画方法
			marginTop: '-=1'
			//设置文字的滚动的方法+是往上-是往下1是速度
		},0,function(){
		//定义方法
				var s = Math.abs(parseInt($(this).css("margin-top")));
				//定义参数
				if(s >= step){
				//判断s小于等于strp
					$(this).find("li").slice(0, 1).appendTo($(this));
					//设定每次动下面出现的文字为1条
					$(this).css("margin-top", 0);
					//设定样式的向上浮动0
				}
			});
		}
		
		this.each(function(i){
		//定义带参数的遍历方法
			var sh = opts["rowHeight"],speed = opts["speed"],_this = $(this);
			//定义参数
			intId[i] = setInterval(function(){
			//setInterval方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭方法
				if(_this.find("ul").height()<=_this.height()){
				//判断匹配到所有的ul元素的宽度大于等于_this的宽度
					clearInterval(intId[i]);
					//方法可取消由 setInterval()
				}else{
				//否则
					marquee(_this, sh);
					//marquee方法
				}
			}, speed);
			//滚动速度,值越大速度越慢

			_this.hover(function(){
			//定义一个伪类方法
				clearInterval(intId[i]);
				//方法可取消由 setInterval()
			},function(){
			//定义方法
				intId[i] = setInterval(function(){
				//setInterval方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭方法
					if(_this.find("ul").height()<=_this.height()){
					//判断匹配到所有的ul元素的宽度大于等于_this的宽度
						clearInterval(intId[i]);
						//方法可取消由 setInterval()
					}else{
					//否则
						marquee(_this, sh);
						//marquee方法
					}
				}, speed);
				//滚动速度,值越大速度越慢
			});
		
		});

	}

})(jQuery);

$(function(){

	$("div.ranklist").myScroll({
	//调用myScroll方法
		speed:40,
		//滚动速度,值越大速度越慢
		rowHeight:24
		//每行的高度
	});
	
});
</script>	

<style type="text/css">
*{margin:0;padding:0;list-style-type:none;}
a,img{border:0;}
a,a:visited{color:#5e5e5e; text-decoration:none;}
a:hover{color:#b52725;text-decoration:underline;}
.clear{display:block;overflow:hidden;clear:both;height:0;line-height:0;font-size:0;}
body{font:12px/180% Arial, Helvetica, sans-serif;}
.demo{width:600px;margin:20px auto;border:solid 1px #ddd;padding:0 10px;}
.demo h2{font-size:14px;color:#333;height:30px;line-height:30px;padding:15px 0;color:#3366cc;}
/* ranklist */
.ranklist{height:200px;overflow:hidden;}
.ranklist li{height:16px;line-height:16px;overflow:hidden;position:relative;padding:0 70px 0 30px;margin:0 0 10px 0;}
.ranklist li em{background:url(images/mun.gif) no-repeat;width:20px;height:16px;overflow:hidden;display:block;position:absolute;left:0;top:0;text-align:center;font-style:normal;color:#333;}
.ranklist li em{background-position:0 -16px;}
.ranklist li.top em{background-position:0 0;color:#fff;}
.ranklist li .num{position:absolute;right:0;top:0;color:#999;}
</style>

<div class="demo">
	<h2>jquery上下无缝滚动插件 列表溢出高度时 自动上下无缝滚动</h2>
	<div class="ranklist">
		<ul>
			<li class="top">
				<em>01</em><p><a href="http://www.17sucai.com/" target="_blank">js图片左右无缝滚动用鼠标控制图片滚动</a></p><span class="num">32万下载</span>
			</li>
			<li class="top">
				<em>02</em><p><a href="http://www.17sucai.com/" target="_blank">js无缝滚动制作js文字无缝滚动和js图片无缝滚动</a></p><span class="num">32万下载</span>
			</li>
			<li class="top">
				<em>03</em><p><a href="http://www.17sucai.com/" target="_blank">jquery 滚动 kxbdSuperMarquee插件支持图片与文字无缝滚动 图片翻滚 焦点图左右切换 banner广告制作</a></p><span class="num">32万下载</span>
			</li>
			<li>
				<em>04</em><p><a href="http://www.17sucai.com/" target="_blank">javascript滚动图片插件支持单排图片上下滚动、图片无缝滚动</a></p><span class="num">32万下载</span>
			</li>
			<li>
				<em>05</em><p><a href="http://www.17sucai.com/" target="_blank"> javascript滚动图片带按钮控制上下左右自动无缝滚动</a></p><span class="num">32万下载</span>
			</li>
			<li>
				<em>06</em><p><a href="http://www.17sucai.com/" target="_blank">jquery hover图片插件制作鼠标滑过标题单个展开图片效果</a></p><span class="num">32万下载</span>
			</li>
			<li>
				<em>07</em><p><a href="http://www.17sucai.com/" target="_blank">flash图片特效3D立体动画焦点图片切换带左右按钮控制滚动</a></p><span class="num">32万下载</span>
			</li>
			<li>
				<em>08</em><p><a href="http://www.17sucai.com/" target="_blank">js lazyload实现网页图片延迟加载特效</a></p><span class="num">32万下载</span>
			</li>
			<li>
				<em>09</em><p><a href="http://www.17sucai.com/" target="_blank">FlippingBook电子杂志书去版权,翻页图片全部外调 站长珍藏版</a></p><span class="num">32万下载</span>
			</li>
			<li>
				<em>10</em><p><a href="http://www.17sucai.com/" target="_blank">门户网站jquery广告控制flash或图片顶部广告显示隐藏</a></p><span class="num">32万下载</span>
			</li>
		</ul>
	</div>
</div>

</body>
</html>

  • jQuery无缝滚动插件支持图片无缝滚动或文字无缝滚动-20130708
            
    
    博客分类: 学习前端技术jQuery findeachoptssetInterval 
  • 大小: 46.4 KB
  • jQuery无缝滚动插件支持图片无缝滚动或文字无缝滚动-20130708
            
    
    博客分类: 学习前端技术jQuery findeachoptssetInterval 
  • 大小: 119.6 KB