我要做的是复制一个手风琴类型的jQuery小部件
我有以下代码:
$('a').on('click', function (e) {
var active = $(this).parent().next();
active.toggleClass('active');
active.siblings().not(active).removeClass('active');
e.preventDefault();
});
虽然active.siblings()。not(active).removeClass('active');不起作用 我希望它如何做我基本上希望它选择所有兄弟姐妹UL标签和兄弟姐妹的任何儿童UL标签,但不包括主动/当前选择。
我已将此小提琴设为http://jsfiddle.net/7u3pw1hz/
答案 0 :(得分:6)
问题是,其他@Configuration
@EnableWebMvc
public class WebMvcConfig extends WebMvcConfigurerAdapter{
@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}
@Override
public void configureMessageConverters(
List<HttpMessageConverter<?>> converters) {
converters.add(new MappingJackson2HttpMessageConverter());
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
@Bean
public InternalResourceViewResolver viewResolver() {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".jsp");
return resolver;
}
}
元素不是兄弟元素,它们是当前ul
的兄弟li
元素的子元素
li
$('a').on('click', function(e) {
var active = $(this).parent().next();
active.toggleClass('active');
active.parent().siblings().children('ul').removeClass('active');
active.find('ul').removeClass('active');
e.preventDefault();
});
ul ul.active {
max-height: 800px;
}
ul ul {
max-height: 0;
overflow: hidden;
}