Javascript 如何通过jquery对同级元素执行反向操作
我想使用Jquery创建一个带有子菜单的菜单栏。有两个带有子菜单的项目。当我单击一次时,我希望它向下滑动,当我单击第二个时,第二个需要向下滑动,但第一个或所有其他一个需要向上滑动。我尝试了以下几点: HTML JavascriptJavascript 如何通过jquery对同级元素执行反向操作,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我想使用Jquery创建一个带有子菜单的菜单栏。有两个带有子菜单的项目。当我单击一次时,我希望它向下滑动,当我单击第二个时,第二个需要向下滑动,但第一个或所有其他一个需要向上滑动。我尝试了以下几点: HTML Javascript $(document).ready(function(){ $('.footer-lang .lang a').on('click', function(e) { $(this).next('ul').slideToggle('slow
$(document).ready(function(){
$('.footer-lang .lang a').on('click', function(e) {
$(this).next('ul').slideToggle('slow');
e.preventDefault();
});
});
一种方法是在单击时添加一个表示打开的类,然后在打开另一项之前关闭该类。类似这样的东西会用到:
$(document).ready(function() {
$('.footer-lang .lang a').on('click', function(e) {
e.preventDefault();
// close the open
$('.is-open').removeClass('is-open').slideToggle('slow);
// open the closed
$(this).next('ul').slideToggle('slow');
$(this).addClass('is-open');
});
});
单击“使其他子菜单”以快速或慢速滑动,然后切换。有关详细信息,请参见下面的代码段 $document.readyfunction{ $'.footer lang.lang a'。单击,函数E{ $.lang>ul.slideUpfast; $this.下一个'ul'。滑动切换'slow'; e、 防止违约; }; }; .footer lang ul{ 显示:块; 文本对齐:居中; } .footer lang.lang{ 显示:内联块; } .footer lang.lang a{ 显示:块; 填充:8px; 颜色:000; } .footer lang.lang>ul{ 显示:无; 位置:绝对位置; }
我想要一个简短的解决方案
$(document).ready(function(){
$('.footer-lang .lang a').on('click', function(e) {
$(this).next('ul').slideToggle('slow');
e.preventDefault();
});
});
$(document).ready(function() {
$('.footer-lang .lang a').on('click', function(e) {
e.preventDefault();
// close the open
$('.is-open').removeClass('is-open').slideToggle('slow);
// open the closed
$(this).next('ul').slideToggle('slow');
$(this).addClass('is-open');
});
});