如何使JavaScript菜单更实用
How to make a JavaScript menu more functional
我只是想知道哪种方式是使这个菜单动态的最佳实践。我不想为每个元素创建一个函数。我应该把它们放入数组中然后循环吗?
<div id="nav">
<div id="button1"></div>
<div id="button2"></div>
<div id="button3"></div>
<div id="button4"></div>
</div>
<div id="navHover">
<div id="hoverButton1"></div>
<div id="hoverButton2"></div>
<div id="hoverButton3"></div>
<div id="hoverButton4"></div>
</div>
<script type="text/javascript">
var buttonOne = document.getElementById('button1');
var buttonOneHover = document.getElementById('hoverButton1');
buttonOne.addEventListener('mouseover', buttonOneBlock, false);
buttonOne.addEventListener('mouseout', buttonOneNone, false);
buttonOneHover.addEventListener('mouseover', buttonOneBlock, false);
buttonOneHover.addEventListener('mouseout', buttonOneNone, false);
function buttonOneBlock() {
var buttonOneHover = document.getElementById('hoverButton1');
buttonOneHover.style.display = 'block';
}
function buttonOneNone() {
var buttonOneHover = document.getElementById('hoverButton1');
buttonOneHover.style.display = 'none';
}
</script>
#nav {
width: 960px;
height: 20px;
background-color: white;
margin: auto;
}
#button1, #button2, #button3, #button4 {
width: 100px;
height: 20px;
background-color: red;
float: left;
margin-left: 10px;
}
#navHover {
width: 960px;
height: 20px;
background-color: white;
margin: auto;
}
#hoverButton1, #hoverButton2, #hoverButton3, #hoverButton4 {
width: 100px;
height: 20px;
background-color: orange;
float: left;
margin-left: 10px;
display: none;
}
这是一个简单的概括:
function setupButton(i) {
var button = document.getElementById('button' + i);
var buttonHover = document.getElementById('hoverButton' + i);
button.addEventListener('mouseover', buttonBlock, false);
button.addEventListener('mouseout', buttonNone, false);
buttonHover.addEventListener('mouseover', buttonBlock, false);
buttonHover.addEventListener('mouseout', buttonNone, false);
function buttonBlock() {
buttonHover.style.display = 'block';
}
function buttonNone() {
buttonHover.style.display = 'none';
}
}
for (var i = 1; i <= 4; ++i) {
setupButton(i)
}
相关文章:
- 如何使下拉菜单向上滑动
- 通过单击同一图标使菜单出现和消失
- 如何使Jquery编码的动态下拉菜单与PHP GET变量协调工作
- 使自动完成可搜索下拉菜单don'我不想在点击搜索时显示列表
- 如何使twitter引导程序子菜单在左侧打开
- 使用vue路由器,我如何才能使菜单选择的样式
- 如何使活动菜单项具有突出显示样式
- 试图弄清楚如何使汉堡菜单在打开后保持静止
- 使悬停菜单适用于移动设备的最佳实践方法是什么?
- WordPress切换菜单 - 使菜单在当前页面上保持打开状态
- 如何使下拉菜单在一定时间后消失 JavaScript.
- 如何使我的下拉菜单显示/对齐
- 如何隐藏当前选定的选项,使其在打开下拉菜单时不显示
- 下拉菜单、CSS、HTML和JavaScript:JavaScript使菜单跳转,无法正常工作
- 如何使wordpress管理菜单默认折叠
- 使按钮立即打开菜单
- 如何使菜单容器在悬停两个元素以外的所有元素时隐藏
- 如何在下拉菜单中使背景颜色为白色
- 使下拉菜单在悬停时显示,并显示超时
- 自定义WordPress管理菜单:如何使编辑器可编辑