jQuery使用uniform.js隐藏和显示添加删除类的元素

时间:2013-07-30 02:20:56

标签: javascript jquery

应用uniform.js后,jQuery无效。

jQuery就像这样。 The original

现在应用uniform.js后html代码发生了变化,但jQuery不再起作用了。统一包装器为复选框添加了包装器,这可能就是为什么不起作用。

这是新代码:New Code

1 个答案:

答案 0 :(得分:0)

是的,以前,您的复选框和您的UL是兄弟姐妹,所以.next()有效。现在,无论你的复选框被包裹起来还是在树中向下。所以这个:

$selexcta(this).next('.child-list')...

找不到下一个ul。

我可能会遗漏一些东西,但我建议不要使用.next()来遍历树。而是在单击复选框时,取消选中所有选中的复选框。然后使用

将复选框中的树“上”到最近的li
$(this).closest('li')

然后向下一个到最近的ul

$(this).closest('li').find('ul')

然后你可以看到它:

$(this).closest('li').find('ul').slideToggle('fast').addClass('mm');

你应该能够在不使用.method()函数的情况下离开。

希望有所帮助。