简体   繁体   English

如何使用 jQuery 滑动打开和关闭 div

[英]how to use jQuery to slide on and off a div

i have this div:我有这个 div:

<div class="services_box">

            <div class="BOX_A">
                <img src="css/images/icon1.png" alt="" />
                <h1>Services title goes here</h1>
                <p>Aenean ultrices purus porttitor oro er risus molestie vestibulum. Morbi et nus metus justo, semper eget condimentum vitae, con varius ut sapien. Ut egestas enim non ante sagittis eget egestas tellus consequat.</p>
                <div class="servicesbutton"> <a href="#" title=""></a> </div>
            </div>

            <div class="BOX_B" **style="display:none;"**>
                <img src="css/images/icon1.png" alt="" />
                <h1>Services title goes here</h1>
                <p>Aenean ultrices purus porttitor oro er risus molestie vestibulum. Morbi et nus metus justo, semper eget condimentum vitae, con varius ut sapien. Ut egestas enim non ante sagittis eget egestas tellus consequat.</p>
                <div class="servicesbutton"> <a href="#" title=""></a> </div>
            </div>      

        </div>

how can i make the hidden div slide in and out on click on the link, using jQuery / js?如何使用 jQuery / js 在单击链接时使隐藏的 div 滑入和滑出?

Something like this?像这样的东西? Fiddle: http://jsfiddle.net/StJ9e/1/小提琴: http://jsfiddle.net/StJ9e/1/

$('div.BOX_A h1, div.BOX_B h1').click(function() {
    $(this).siblings('.slide').slideToggle();
});

Or if your looking for an accordion type effect:或者,如果您正在寻找手风琴式效果:

Fiddle: http://jsfiddle.net/bK4rN/2/小提琴: http://jsfiddle.net/bK4rN/2/

var $last = jQuery('.BOX_A .slide');

$('.services_box').delegate('div > h1', 'click', function() {
    $last.slideUp();
    $last = $(this).siblings('.slide');
    $last.stop(true, true).slideDown();
});

Edit : in response to comment编辑:回应评论

I need something like this: jsfiddle.net/hJwqs/1... but i need only one this to change, not all.我需要这样的东西:jsfiddle.net/hJwqs/1 ...但我只需要一个这个来改变,而不是全部。

Change your code to:将您的代码更改为:

$("div.BOX_A a").click(function () {
    $(this).closest('.services_box').find('div.BOX_A').slideToggle();
});

Fiddle: http://jsfiddle.net/garreh/3KBug/小提琴: http://jsfiddle.net/garreh/3KBug/

or for a styled one: http://jsfiddle.net/garreh/cuEUG/或者一个风格的: http://jsfiddle.net/garreh/cuEUG/

you can use .fadeIn() method to make it appear and .fadeOut() to dissapear, also you can use the您可以使用.fadeIn()方法使其出现,使用.fadeOut() () 方法使其消失,也可以使用

.toggle() method, you can search more on google, here are the docs anyway:

toggle: http://api.jquery.com/toggle/切换: http://api.jquery.com/toggle/

fadein: http://api.jquery.com/fadeIn/淡入: http://api.jquery.com/fadeIn/

fadeout: http://api.jquery.com/fadeOut/淡出: http://api.jquery.com/fadeOut/

Not very sure what you mean is it something like this?不太清楚你的意思是这样的吗?

$(document).ready(function() {
    $("div.BOX_A").bind("click", function() { $(this).slideToggle(); });
    $("div.BOX_B").bind("click", function() { $(this).slideToggle(); });
});

http://jsfiddle.net/AFLUp/ http://jsfiddle.net/AFLUp/

If you clarify what exactly should be seen/hidden etc I can modify the code to help you:)如果您澄清应该看到/隐藏的确切内容等,我可以修改代码以帮助您:)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM