Javascript 如何使此slideDown/slideUp在不同的类中正常工作?
我正在尝试学习jQuery,但似乎无法理解以下内容 加载页面时,div 1应可见。Javascript 如何使此slideDown/slideUp在不同的类中正常工作?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在尝试学习jQuery,但似乎无法理解以下内容 加载页面时,div 1应可见。 当我单击菜单按钮时,div1应该隐藏,单击的div应该替换它 我希望Div1有一个不同的类分配给它(这可以在没有CSS的情况下完成吗?),并且当您从notactive选择一个类到active时,让这两个类切换 在jQuery中如何实现这一点 HTML <div id='container'> <div id='menu'> <ul id='List'>
当我单击菜单按钮时,div1应该隐藏,单击的div应该替换它 我希望Div1有一个不同的类分配给它(这可以在没有CSS的情况下完成吗?),并且当您从notactive选择一个类到active时,让这两个类切换 在jQuery中如何实现这一点 HTML
<div id='container'>
<div id='menu'>
<ul id='List'>
<li><a href="#content1">Menu 1</a></li>
<li><a href="#content2">Menu 2</a></li>
<li><a href="#content3">Menu 3</a></li>
</ul>
</div>
<div id='content'>
<div id=content1 class="">
<h1>Div 1</h1>
Lorem ipsum dolor sit amet
</div>
<div id=content2 class="disactivated">
<h1>Div 2 </h1>
Lorem ipsum dolor sit amet
</div>
<div id=content3 class="disactivated">
<h1>Div 3</h1>
Lorem ipsum dolor sit amet
</div>
</div>
jQuery
$(document).ready(function(){
$('a').on('click',function(){
$(this)
.slideDown('fast')
.siblings("div:visible").slideUp('fast')
})
});
在jQuery代码中,
$(this)
指的是a
元素(单击的元素),而不是目标div
$('a').on('click',function(){
var target = $(this).attr('href');
$(target)
.slideDown('fast')
.siblings("div:visible").slideUp('fast');
})
如果要切换禁用的
类,请如下链接:
$(target)
.removeClass('disactivated')
.slideDown('fast')
.siblings("div:visible")
.slideUp('fast')
.addClass('disactivated');
$('a').on('click',function(){
var target = $(this).attr('href');
$(target)
.removeClass('disactivated')
.slideDown('fast')
.siblings("div:visible")
.slideUp('fast')
.addClass('disactivated');
return false;
})
此外,在使用链接上的单击事件时,您可能希望将return false
添加到事件处理程序的末尾。最终代码应如下所示:
$(target)
.removeClass('disactivated')
.slideDown('fast')
.siblings("div:visible")
.slideUp('fast')
.addClass('disactivated');
$('a').on('click',function(){
var target = $(this).attr('href');
$(target)
.removeClass('disactivated')
.slideDown('fast')
.siblings("div:visible")
.slideUp('fast')
.addClass('disactivated');
return false;
})
谢谢,这很有帮助