繁体   English   中英

快速更改菜单样式或在jQuery .each迭代器内传递参数

[英]Change Menu Styling on fly or pass a param inside jQuery .each iterator

我有一堆菜单链接,并且想在单击时更改其样式-说您单击“关于”,它会变成粗体和红色。 我选择项目并将click事件绑定到它们:

$("#nav_menu > *").bind("click",function(){doTrigger(this.id);});

这样,我将单击项的ID传递给doTrigger

好。 现在,在doTrigger我尝试遍历所有项目并更改其样式:例如全部更改为style1并单击为style2 问题是:

$("#nav_menu > *").each(function(){;});

不会让我传递点击项的ID。

我认为应该有一种不太复杂的方式来获取我所需要的东西。 此外,我想我也迷路了。

传递给函数$.each()doTrigger()中的上下文中运行,因此访问变量doTrigger() -你不需要通过任何

function doTrigger(id) {
...
   $("#nav_menu > *").each(function(){ /* you can access var id in here */ ;});

尝试这样的事情:

$("#nav_menu > *").bind("click",function(){ $("#nav_menu > *").attr('class', 'class1'); $(this).attr('class', 'class2'); });

单击某个项目时,这会将所有子级重置为class1 ,然后只有该项目为class2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM