富贵资源网 Design By www.hznty.com
本文实例讲述了JS+CSS实现鼠标滑过时动态翻滚的导航条效果。分享给大家供大家参考。具体如下:
这是一款鼠标悬停时动态翻滚的导航条,注意这里用了两个背景图,请等待网页加载完成或多刷新几次,这个是使用JavaScript实现的,不过代码好像是从jQuery里摘出来的,有点像。
运行效果截图如下:
在线演示地址如下:
http://demo.jb51.net/js/2015/js-css-mouse-over-nav-scroll-style-codes/
具体代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>动态翻滚的导航条</title> <style type="text/css"> .clear:after{content:"."; display:block; height:0; clear:both; visibility:hidden}.clear{display:inline-block}.clear{display:block} div#nav{height:32px; background:url(images/YL29.jpg) repeat-x} div#nav ul{ width:705px; list-style:none; margin-top: 0; margin-right: auto; margin-bottom: 0; margin-left: 0px; } div#nav ul li{ float:left; height:32px; overflow:hidden; background-image: url(images/YL30.jpg); background-repeat: repeat-y; background-position: right 0; padding-top: 0; padding-right: 1px; padding-bottom: 0; padding-left: 0px; font-family: Arial; font-size: 12px; line-height: 32px; font-weight: bold; } div#nav ul li a{ float:left; height:100%; width: 77px; background:url(images/YL28.jpg) repeat-x; color:#fff; text-decoration:none; padding-top: 0; padding-right: 5px; padding-bottom: 0; padding-left: 5px; text-align:center; } div#nav ul li a.hover{ clear:both; background-position:0 -32px; width: 77px; } div#nav ul li.on a{ background-position:0 -32px; } div#nav ul li.nobg{background:none} /* ]]> */ </style> </head> <body> <div id="nav"> <ul class="clear"> <li><a href="#"></a></li> <li><a href="#">网页特效</a></li> <li><a href="#">工具软件</a></li> <li><a href="#">脚本下载</a></li> <li><a href="#">菜单导航</a></li> <li><a href="#">层和布局</a></li> <li><a href="#">论坛社区</a></li> <li><a href="#">广告联系</a></li> <li class="nobg"></li> </ul> </div> <script type="text/javascript"> /* <![CDATA[ */ function nav(c, config){ this.config = config || {speed: 10, num: 2}; this.container = (typeof(c)=="object") "a"); el.innerHTML = inner; el.href = href; el.className = 'hover'; _this.container.appendChild(el); _this.container.onmouseover = function (){_this.start()}; _this.container.onmouseout = function (){_this.end()}; }(); this.start = function (){ _this.clear(); _this.scrollTimeId = setTimeout(function(){_this.scrollUp();}, _this.config.speed); }; this.end = function (){ _this.clear(); _this.scrollTimeId = setTimeout(function(){_this.scrollDown();}, _this.config.speed); }; this.scrollUp = function (){ var c = _this.container; if(c.scrollTop >= _this.lineHeight){c.scrollTop = _this.lineHeight;return;} c.scrollTop += _this.config.num; _this.scrollTimeId = setTimeout(function(){_this.scrollUp();}, _this.config.speed); }; this.scrollDown = function (){ var c = _this.container; if(c.scrollTop <= 0){c.scrollTop = 0;return;} c.scrollTop -= _this.config.num; _this.scrollTimeId = setTimeout(function(){_this.scrollDown();}, _this.config.speed); }; this.clear = function (){clearTimeout(_this.scrollTimeId)}; } (function(){ var container = document.getElementById('nav'); var el_li = container.getElementsByTagName('li'); var arr = []; for( var i = 0; i < el_li.length; i++){ if(el_li[i].className == 'on') continue; arr[i] = new nav(el_li[i], {speed: 10, num: 4}); } }) (); /* ]]> */ </script> </body> </html>
希望本文所述对大家的JavaScript程序设计有所帮助。
富贵资源网 Design By www.hznty.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
富贵资源网 Design By www.hznty.com
暂无评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。