Jquery判断li是不是有某class,给父级ul增加属性。【JQ高手进】

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jquery判断li是不是有某class,给父级ul增加属性。【JQ高手进】相关的知识,希望对你有一定的参考价值。

这是默认情况

如果我点击其中某一个链接,那么ul的样式又会返回到默认样式。
请问我该怎么用JQ去控制这个。

这是我的Js代码

这是页面源码
我的意思也就是:
当li有 class="on"的属性的时候,给他的父级 ul 设置display="block";其他的为"none";并且图标也要控制。

我个人JQ差。Js也不会去判断是否有指定class。

请用Jq或者Js。最好是能跟我自己写的那个写在一起。这样可以方便我以后改。。。。
谢谢大婶们~!
我→企↙
鹅→号↓
37↙
91↘
81

273
怕河蟹。你懂的
我想有很多大神木有理解到我的意思,我的意思是说。
当我的ul li有class="on"的时候, ul的display属性为block;因为我这个是多个ul嵌套的。
或者也可以这样子:
当class="on"的时候,展开其父级ul.(即父级ul dispaly="block")其他的ul为隐藏(dispaly="none")

用Js或者Jq都行。只求速度!!~

参考技术A $("li.on") 选出所有的 带on的li $("li").hasClass("on") 返回bool
$("li.on").parent().show() 显示 $("li.on").parent().hide() 隐藏追问

这样还是不行啊。我点击的时候,相当于页面刷新了一次,他会自动去调用到默认的样式。。。。

追答

先把所有的A标签的 跳转去掉, $("ul a").on("click",function()return false ) 这样的话 在点击就不会跳转了

本回答被提问者采纳
参考技术B $(li).each(function()
if($(this).attr("class")=="on")
//修改父元素



)
参考技术C if($('li').hasClass('class_name'))
    //action

追问

亲,写完撒。

JQuery 总结 jQuery 筛选查找 等

1. hasClass(“class”) 判断是否有这个class
2. addClass(“class”)增加, removeClass(“class”)删除,toggleClass(“cc”)有就删cc,没有增加cc。

$("li").click(function () {
$(this).toggleClass("bb")
})


$("li").click(function () {
if ($(this).hasClass("bb")) {
  $(this).removeClass("bb")

}else{
   $(this).addClass("bb")
}
})




$("li").click(function () {
if ($(this).attr("class")=="aa") {
  $(this).addClass("bb")
}else{
 $(this).removeClass("bb")
}
})

  

 

 



以上是关于Jquery判断li是不是有某class,给父级ul增加属性。【JQ高手进】的主要内容,如果未能解决你的问题,请参考以下文章

jQuery事件委托

jquery判断是不是添加样式

将值/变量从 fancybox iframe 传递给父级

jquery检查ajax是不是有某两个数组中的键

怎么判断数组中是不是有某元素

多处理全局变量更新未返回给父级