Javascript 单击“将两个类添加到不同的元素”
我正在建造一个在左侧有垂直导航,在右侧有内容的建筑,其中导航的宽度为20%,内容为80% 我想单击(切换div的,在nav内部)将nav的宽度更改为5%,内容宽度更改为95% 我知道如何将类添加到正在单击的元素,但我必须知道如何影响其他元素。 任何帮助都将不胜感激Javascript 单击“将两个类添加到不同的元素”,javascript,Javascript,我正在建造一个在左侧有垂直导航,在右侧有内容的建筑,其中导航的宽度为20%,内容为80% 我想单击(切换div的,在nav内部)将nav的宽度更改为5%,内容宽度更改为95% 我知道如何将类添加到正在单击的元素,但我必须知道如何影响其他元素。 任何帮助都将不胜感激 <div class="nav"> <div class="toggle"> <img src="images/toggle.png"/>
<div class="nav">
<div class="toggle">
<img src="images/toggle.png"/>
</div>
<ul>
<li class="header"><p>Szymon Fraczyk<br>photography</p></li>
<li class="szymon"><a href="index.html"><p>Szymon Fraczyk</p></a></li>
<li class="zdjecia"><a href="index.html"><p>Zdjecia</p></a></li>
<li class="slubne"><a href="index.html"><p>Slubne</p></a></li>
<li class="chrzciny"><a href="index.html"><p>Chrzciny</p></a></li>
<li class="kontakt"><a href="index.html"><p>Kontakt</p></a></li>
<li class="kontakt"></li>
</ul>
</div>
<div class="content">
<div class="royalSlider rsDefault">
<img class="rsImg" src="images/1.jpg" alt="image desc" />
<img class="rsImg" src="images/2.jpg" alt="image desc" />
<img class="rsImg" src="images/3.jpg" alt="image desc" />
<img class="rsImg" src="images/4.jpg" alt="image desc" />
<img class="rsImg" src="images/5.jpg" alt="image desc" />
<img class="rsImg" src="images/6.jpg" alt="image desc" />
<img class="rsImg" src="images/7.jpg" alt="image desc" />
</div>
</div>
</div>
- Szymon Fraczyk
摄影
您可以使用动画和JQuery执行您想要的操作:
您的代码:
我给你一些不错的动画效果:)
css:
.nav {
position:absolute;
top:0px;
left:0px;
width:20%;
background-color:#ccc;
}
.content {
position:absolute;
top:0px;
right:0px;
width:80%;
background-color:#aaa;
}
javascript:
$('.content').click(function(){
$(this).animate({'width':'80%'}) ;
$('.nav').animate({'width':'20%'}) ;
}) ;
$('.nav').click(function(){
$(this).animate({'width':'5%'}) ;
$('.content').animate({'width':'95%'}) ;
}) ;
您可以使用动画和JQuery执行您想要的操作: 您的代码: 我给你一些不错的动画效果:) css:
.nav {
position:absolute;
top:0px;
left:0px;
width:20%;
background-color:#ccc;
}
.content {
position:absolute;
top:0px;
right:0px;
width:80%;
background-color:#aaa;
}
javascript:
$('.content').click(function(){
$(this).animate({'width':'80%'}) ;
$('.nav').animate({'width':'20%'}) ;
}) ;
$('.nav').click(function(){
$(this).animate({'width':'5%'}) ;
$('.content').animate({'width':'95%'}) ;
}) ;
查看页面,如果您向content div添加了一个id,那么您将能够
var d = document.getElementById('content');
d.className = d.className + "wideClass";
否则,您将不得不循环遍历所有div,并找到类为“content”的div。与此答案类似:
无论采用哪种方式,一旦选择元素,就可以附加类,使宽度达到您想要的95%。查看页面,如果您在内容div中添加一个id,那么您将能够
var d = document.getElementById('content');
d.className = d.className + "wideClass";
否则,您将不得不循环遍历所有div,并找到类为“content”的div。与此答案类似:
无论哪种方式,一旦选择了元素,就可以附加将使宽度达到95%的类。它们都有唯一的id吗?你能给我们看看你试过的html/代码吗?它们每个都有一个类:.nav和.contentcheck querySelector,它们可能会给你一个线索,但记住ie8+它们都有唯一的id吗?你能给我们看一下你尝试过的html/代码吗?它们每个都有一个类:.nav和.contentcheck querySelector,它们可能会给你一个线索,但是记住它的ie8+如果你想要相反的效果,你可以反转大小;)对于动画来说,这比剧烈的转变要好。我做了一个快速的转变,因为我们没有。这只是为了表示喜爱。如果你愿意的话,你可以用float来做。我会投票给你,因为你试图提供帮助,这很酷,但如果人们没有要求,建议他们使用jquery不是一个好主意。我同意,但动画可以证明这一点。但是一个简单的
document.getByClassName(..).width=…
whithonclick=“…”
也可以完成这项工作。如果想要相反的效果,可以反转大小;)对于动画来说,这比剧烈的转变要好。我做了一个快速的转变,因为我们没有。这只是为了表示喜爱。如果你愿意的话,你可以用float来做。我会投票给你,因为你试图提供帮助,这很酷,但如果人们没有要求,建议他们使用jquery不是一个好主意。我同意,但动画可以证明这一点。但是一个简单的document.getByClassName(..).width=…
whithonclick=“…”
也可以完成这项工作。