本文实例讲述了php+jQuery实现的三级导航栏下拉菜单显示效果。分享给大家供大家参考,具体如下:
首先看看效果图:
1.数据配置文件 db.php
<?php
return array(
array(
"one" => "关于我们",
"two" => array(
array(
"three_tit" => "公司介绍",
"three_cont" => array(
"企业概况",
"组织架构",
"发展历程",
"企业文化",
"服务理念"
)
),
array(
"three_tit" => "企业荣誉",
"three_cont" => array(
"获奖证书",
"行业贡献",
"资质认证",
"协会活动",
"公司的成就")
),
array(
"three_tit" => "销售网络",
"three_cont" => array(
"东北",
"华北",
"中东",
"华南",
"西南",
"西北"
)
)
)
),
array(
"one" => "产品展示",
"two" => array(
array(
"three_tit" => "进出口贸易",
"three_cont" => array(
"数码产品",
"最新能源",
"新鲜水果",
"肉类食品",
"衣服",
"金银首饰"
)
),
array(
"three_tit" => "商业服务",
"three_cont" => array(
"资格认证",
"人才培养",
"热门商品推荐",
"最新科技前沿"
)
)
)
),
array(
"one" => "新闻中心",
"two" => array(
array(
"three_tit" => "企业动态",
"three_cont" => array(
"公司新闻",
"新品上市",
"企业动态"
)
),
array(
"three_tit" => "行业动态",
"three_cont" => array(
"媒体聚焦",
"业内关注",
"国内行情",
"国际行情"
)
)
)
),
array(
"one" => "联系我们",
"two" => array(
array(
"three_tit" => "联系方式",
"three_cont" => array(
"在线客服",
"通信地址",
"电话传真",
"在线留言"
)
),
array(
"three_tit" => "人才招聘",
"three_cont" => array(
"项目经理",
"助理秘书",
"渠道代理",
"网站工程师"
)
)
)
)
);
?>
2.index文件
<?php
header("Content-type:text/html;charset=utf-8");
// 载入数据
$data = include "./db.php";
// 载入html文件
include "./nav.html";
?>
3.nav.html文件
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="./js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(function(){
//对元素进行隐藏
$(".menu>li").eq(4).find("s").hide();
$(".two li").last().css("border","none");
//鼠标移入和移出事件
$(".menu li").hover(function(){
$(this).find(".two").show();
//鼠标移入和移出事件
$(".two li").hover(function(){
$(this).find(".hide").show();
},function(){
$(this).find(".hide").hide();
});
},function(){
$(this).find(".two").hide();
});
})
</script>
<title>无标题文档</title>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
body{
font: 18px/50px "微软雅黑";
color: #FFF;
}
li{
list-style: none;
}
a{
text-decoration: none;
color: #FFF;
}
#nav{
width: 610px;
height: 50px;
background: #01532B;
margin: 30px auto;
border-radius: 5px;
box-shadow: 2px 3px 2px #479E33;
}
#nav ul.menu{
padding: 0 5px;
}
#nav ul.menu li{
width: 120px;
height: 50px;
line-height: 50px;
text-align: center;
float: left;
position: relative;
}
#nav ul.menu li a{
display: block;
text-shadow:0px 1px 1px #479E33;
}
#nav ul.menu li a:hover{
color: #FFF;
background: #479E33;
}
#nav ul.menu li s{
width: 0px;
height: 30px;
border-left: 1px solid #479E33;
display: block;
position: absolute;
right: 0;
top: 10px;
}
#nav ul.menu li ul{
position: absolute;
top: 50px;
left: 0;
background: #479E33;
border-radius: 0 0 3px 3px;
box-shadow: 2px 3px 2px #479E33;
}
#nav ul.menu li ul li{
border-bottom: 1px solid #479E33;
width: 120px;
position: relative;
}
#nav ul.menu li ul li a{
font-size: 16px;
}
#nav ul.menu li ul li .hide{
position: absolute;
top: 0px;
left: 120px;
}
#nav ul.menu li ul li .hide li{
border-left: 1px solid #479E33;
}
#nav ul.menu li ul li .hide li a{
font-size: 14px;
}
.two,.hide{
display: none;
}
</style>
</head>
<body>
<div id="nav">
<ul class="menu">
<li><a href="">网站首页</a><s></s></li>
<?php foreach($data as $v) { ?>
<li>
<a href=""><?php echo $v["one"] ?></a><s></s>
<ul class="two">
<?php foreach ($v["two"] as $val) { ?>
<li>
<a href=""><?php echo $val["three_tit"] ?></a>
<ul class="hide">
<?php foreach ($val["three_cont"] as $value) { ?>
<li><a href=""><?php echo $value ?></a></li>
<?php } ?>
</ul>
</li>
<?php } ?>
</ul>
</li>
<?php } ?>
</ul>
</div>
</body>
</html>
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《php+mysqli数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP网络编程技巧总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。