当前位置:编程学习 > JS >>

向上滑动的蓝色大气导航菜单

向上滑动的蓝色导航菜单,看上去非常大气,当前选中时以其它颜色显示,鼠标滑过时有动画效果,菜单通用于大部分网站,欢迎下载使用。
答案:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html>
<head>
<title>蓝色菜单</title>
<style>
body{margin:100px 0}
.clear:after{content:"."; display:block; height:0; clear:both; visibility:hidden}.clear{display:inline-block}.clear{display:block}
div#nav{height:70px; background:url(/jscss/demoimg/200907/nav_bg.png) repeat-x}
div#nav ul{width:960px; margin:0 auto; list-style:none}
div#nav ul li{float:left; height:35px; overflow:hidden; padding:0 2px 0 0; font: bold 12px/35px Arial; background:url(/jscss/demoimg/200907/nav_right.png) repeat-y right 0}
div#nav ul li a{float:left; height:100%; padding:0 20px; background:url(/jscss/demoimg/200907/nav_sub.png) repeat-x; color:#fff; text-decoration:none}
div#nav ul li a.hover{clear:both; background-position:0 -35px}
div#nav ul li.on a{background-position:0 -35px}
div#nav ul li.nobg{background:none}
</style>
</head>
<body onload="changeTableBg();">
<div id="nav">
<ul class="clear">
<li class="on"><a href="#">网站首页</a></li>
<li><a href="#">最新更新</a></li>
<li><a href="#">网页特效</a></li>
<li><a href="#">CSS教程</a></li>
<li><a href="#">脚本资源</a></li>
<li><a href="#">下载排行</a></li>
<li class="nobg"><a href="#">网站留言</a></li>
</ul>

</div>
</body>
<script type="text/javascript">
function nav(c, config){
	this.config = config || {speed: 10, num: 2};
	this.container = (typeof(c)=="object") ? c : document.getElementById(c);
	this.lineHeight = this.container.offsetHeight;
	this.scrollTimeId = null;
	var _this = this;
	this.__construct = function (){
		var inner,el,href;
		inner = _this.container.childNodes[0].innerHTML;
		href = _this.container.childNodes[0].href;
		el = document.createElement("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>
</html>

上一个:带英文提示的CSS网站导航栏
下一个:CSS深蓝色鼠标悬停放大的国外菜单

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,