onmouseover用于使用foor循环创建的菜单
onmouseover for menu created with foor loop
我在javascript中使用for循环创建了一个简单的菜单,因为每个"tab"的大多数元素都是相同的,所以我使用for循环一次性完成了所有操作。
我的问题是,当我用鼠标悬停在选项卡上时,如何使用onmouseover事件来更改选项卡的背景颜色。
示例:
TopValues = [ "130px", "163px", "196px" ];
MenuNames = [ "Home", "Articles", "Contact" ];
MenuItemLinks = [ "#", "#", "#" ];
MenuItemTitles = [ "Go To Home", "Go To Articles", "Go To Contact" ];
window.onload = function makeMenu() {
for(var i=0; i<MenuNames.length; i++) {
var menu = document.createElement('a');
menu.text = MenuNames[i];
menu.title = MenuItemTitles[i];
menu.href = MenuItemLinks[i];
document.body.appendChild(menu);
menu.style.position = "fixed";
menu.style.border = "1px solid red";
menu.style.width = "90px";
menu.style.top = TopValues[i];
menu.style.left = "5px";
menu.style.padding = "5px";
menu.style.borderRadius = "5px";
menu.style.textDecoration = "none";
menu.style.background = "yellow";
menu.style.color = "red";
}
menu.onmouseover = function() { menu.style.background = "orange"; };
menu.onmouseout = function() { menu.style.background = "yellow"; };
}
在本例中,只有最后一个选项卡会按原样更改背景颜色。你能帮我理解我该怎么做吗?
我想制作一个空数组,并将其id分配给每个选项卡,然后使用另一个for循环和if语句来确定哪个选项卡是它,并更改它的颜色,但我没能做到。
感谢大家
在循环中移动事件侦听器。
for(var i=0; i<MenuNames.length; i++) {
var menu = document.createElement('a');
menu.text = MenuNames[i];
menu.title = MenuItemTitles[i];
menu.href = MenuItemLinks[i];
document.body.appendChild(menu);
menu.style.position = "fixed";
menu.style.border = "1px solid red";
menu.style.width = "90px";
menu.style.top = TopValues[i];
menu.style.left = "5px";
menu.style.padding = "5px";
menu.style.borderRadius = "5px";
menu.style.textDecoration = "none";
menu.style.background = "yellow";
menu.style.color = "red";
(function(el) {
el.onmouseover = function() { el.style.background = "orange"; };
el.onmouseout = function() { el.style.background = "yellow"; }
}(menu));
}
相关文章:
- 创建带有和不带有JavaScript的Bootstrap下拉菜单
- 创建下拉菜单
- Jquerymobile-使用javascript创建选择菜单
- 基于下拉菜单创建开关
- 尝试创建一个具有z-index的堆叠菜单'使用HTML5/CSS3/JS
- 在jQuery中创建向下滑动子菜单的最有效方法
- 如何创建菜单项根据运行时值更改的 html 上下文菜单
- 尝试使用 jQuery 创建菜单,但我的代码不起作用
- 动态创建菜单以在不同的网页中导入
- 使用 AngularJS 从 JSON 文件创建菜单
- 如何创建菜单像kijiji's的主页,带有html和jquery或javascript
- extjs如何使用单选按钮创建菜单
- jQuery JSON循环通过嵌套对象来创建菜单
- 在流体中动态创建菜单
- 如何添加class="active"使用Javascript创建菜单栏
- 在javascript中创建菜单存在问题
- 使用jQuery创建菜单
- 如何在ng-grid中创建菜单
- 如何从json文件创建菜单
- 在jQueryMobile中创建菜单的最佳方式是什么?