Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 滑动切换下一个元素_Jquery_Html_Slidetoggle - Fatal编程技术网

Jquery 滑动切换下一个元素

Jquery 滑动切换下一个元素,jquery,html,slidetoggle,Jquery,Html,Slidetoggle,我想要5个标签,当单击时,在下面显示一个。我可以将每个命名,每个都不同,但这会导致大量jQuery 因此,目前我有: <p class="flip">Example</p> <div class="panel"> <p>Example Panel</p> </div><!--End panel--> <p class="flip">Example</p> <div class=

我想要5个
标签,当单击时,在下面显示一个
。我可以将每个
命名,每个
都不同,但这会导致大量jQuery

因此,目前我有:

<p class="flip">Example</p>
<div class="panel">
  <p>Example Panel</p>
</div><!--End panel-->

<p class="flip">Example</p>
<div class="panel">
  <p>Example Panel</p>
</div><!--End panel-->

<p class="flip">Example</p>
<div class="panel">
  <p>Example Panel</p>
</div><!--End panel-->

这显然可以一次切换所有
.panel
。为了澄清,我希望第一个
.flip
切换第一个
.panel。

只需执行一些简单的DOM遍历,以选择与单击的

相关的正确
元素:

$('.flip').click(function(e) {
    $(this).next('div.panel').slideToggle('slow');
});

click
事件处理程序函数中,
这是单击的
元素。调用
.next('div.panel')
将选择DOM中的下一个元素,如果它是
,并且具有类
panel

我遇到了下一个问题…我希望当我在img上脉冲单击
时,act
将被一对一隐藏

我找到了解决方案,但对于
noact
我想找到
的解决方案。act

这是我的密码:

$(document).ready(function(){
    $('.noact').show();
    $('.act').show();
    $('.noact').click(function(){
        var x = $(this).next('.act') ;
        x.slideToggle(1000);
    });
    $('.act').click(function(){
        $('.noact').slideToggle(1000);
    });
}); 

太棒了,非常感谢。没有做过太多的工作。接下来,在函数中从未见过(e),如果没有它,它会做什么?user2144363 jQuery将其规范化的
事件
对象作为第一个参数传递给事件处理程序函数。我要传递给
click
的匿名函数有一个参数-
e
,它将接受该参数的值。仅当您希望在函数中处理事件时才需要它-例如调用
.preventDefault()
,以防止该事件的默认行为-但我习惯在编写jQuery事件处理程序时始终指定它。据我所知,这个答案并没有增加原始问题答案的质量,而且似乎更适合作为一个新问题。请考虑把这个答案和它的关注变成一个新的问题。
$(document).ready(function(){
    $('.noact').show();
    $('.act').show();
    $('.noact').click(function(){
        var x = $(this).next('.act') ;
        x.slideToggle(1000);
    });
    $('.act').click(function(){
        $('.noact').slideToggle(1000);
    });
});