Javascript 切换滑块不能正确更改回图标
我不明白这一点,如果有任何帮助,我将非常感激。我在我的网站上使用切换滑块,他们几乎可以做我想做的事情。这是: 单击时更改图标(从+到-),向下滑动内容容器 如果单击另一个切换链接,则关闭打开的容器并将图标更改回+ 我遇到的问题是,如果再次单击其切换链接(而不是单击另一个切换链接),则打开容器的图标不会变回+。明白了吗 您可以在此处查看: 请单击面板,您将看到。一切正常,除非您单击打开的同一链接将其关闭 这是该功能的代码,就像现在一样:Javascript 切换滑块不能正确更改回图标,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我不明白这一点,如果有任何帮助,我将非常感激。我在我的网站上使用切换滑块,他们几乎可以做我想做的事情。这是: 单击时更改图标(从+到-),向下滑动内容容器 如果单击另一个切换链接,则关闭打开的容器并将图标更改回+ 我遇到的问题是,如果再次单击其切换链接(而不是单击另一个切换链接),则打开容器的图标不会变回+。明白了吗 您可以在此处查看: 请单击面板,您将看到。一切正常,除非您单击打开的同一链接将其关闭 这是该功能的代码,就像现在一样: // Toggle Slides $(function(
// Toggle Slides
$(function(){ // run after page loads
//Switch the "Open" and "Close" state per click then slide up/down (depending on open/close state)
$("p.trigger, h3.trigger").click(function(){
$("p.trigger, h3.trigger").removeClass("active");
$('.toggle_container').not($(this).next()).slideUp();
$(this).addClass("active").next().slideToggle(500);
return false; //Prevent the browser jump to the link anchor
});
});
非常感谢您的帮助
这是其中一个切换容器的HTML
<div class="list">
<p class="trigger">
<a href="#">All you need is Nextree…</a>
</p>
<div class="toggle_container">
<div class="block clearfix">
<p>denn es deckt alle wichtigen Geschäftsprozesse ab. Geniessen Sie die Vorteile der vollständigen Integration, die automatische Verlinkung von zusammenhängenden Informationen, den direkten Zugriff auf Dokumente – jederzeit und überall.
</p>
</div>
<p class="toggle-close">
<a href="#">Close</a>
</p>
</div>
</div>
denn es deckt alle wichtigen Geschäfts Prozesse ab.Geniessen在Volsteile der vorlständigen Integration中担任首席执行官,负责管理zusammenhängeden信息,并负责管理Dokumente–jederzeit undüberall。
试试这个
$("p.trigger, h3.trigger").click(function() {
var $this = $(this);
var hasActive = $this.hasClass('active');
$("p.trigger, h3.trigger").removeClass("active");
$('.toggle_container').not($this.next()).slideUp();
if( !hasActive ) {
$this.addClass("active");
}
$this.next().slideToggle(500);
return false; //Prevent the browser jump to the link anchor
});
这将仅在当前未激活时添加活动。这是未经测试的代码,只要您理解我试图做的事情,如果代码中有错误,您应该正确地解决它这是因为您在最后执行$(This).addClass(“active”)。因此,无论您是打开还是关闭,您都会将活动类添加到刚才在末尾单击的项目中。因此,当打开某个对象并再次单击它时,它将首先删除活动类并将其关闭,然后再次添加活动类,这样-符号仍然显示出来这是非常完美的,就像一个charme。非常感谢,我很高兴;-)