0

应用uniform.jsjQuery 后不起作用。

jQuery 是这样的。原来的.

现在 html 代码在应用后发生了变化,uniform.js但 jQuery 不再工作了。统一的包装器将包装器添加到复选框中,这可能是它不起作用的原因。

这是新代码:新代码

4

1 回答 1

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() 函数。

希望有帮助。

于 2013-07-30T03:56:48.883 回答