Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.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
Javascript 将一个函数包装到另一个函数中_Javascript_Jquery_Function - Fatal编程技术网

Javascript 将一个函数包装到另一个函数中

Javascript 将一个函数包装到另一个函数中,javascript,jquery,function,Javascript,Jquery,Function,我正在制作两个div,将它们隐藏在页面加载中,但在单击其中一个div时,将每个div分别下拉。当一个处于活动状态时,另一个处于隐藏状态 到目前为止我有 $( '#div, #div1' ).hide(); { $( "#div" ).click(function() { $( "#div1" ).slideUp( "slow", function() { // Animation complete. }); }); 但是我在将click函数包装到初始函数中时遇到了问题。一个挑选名单正在调用di

我正在制作两个div,将它们隐藏在页面加载中,但在单击其中一个div时,将每个div分别下拉。当一个处于活动状态时,另一个处于隐藏状态

到目前为止我有

$( '#div, #div1' ).hide(); {
$( "#div" ).click(function() {
$( "#div1" ).slideUp( "slow", function() {
// Animation complete.
});
});
但是我在将click函数包装到初始函数中时遇到了问题。一个挑选名单正在调用div

有人能带我走过这段路吗?我更喜欢一个循序渐进的例子。我在编写jQuery方面的经验非常有限,非常感谢您的帮助

这是我正在处理的页面链接

我想做的是,我想在页面加载时隐藏两个“组”区域。然后,一旦在下拉列表中进行了选择,相应的“组”就会向下滑动。当选择另一个“组”时,第一个组消失,新选择的组可见

我希望这更清楚

var $sliderDivs = $( '#div, #div1' );
$sliderDivs.click(function(e){
    $(this).slideDown("slow");
    $sliderDivs.not(this).slideUp( "slow", function() {
        // Animation complete.
    });
}
所有jQuery事件处理程序都将上下文(this设置为什么)设置为触发事件的元素

将选择器保存为带$前缀的变量的原因是,它更易于维护(只需在一个位置进行更改),而且速度更快(每次使用$()包装选择器时,jquery都会遍历dom)

编辑:根据我的判断,我给你举了一个简单的例子:


应该可以让您到达需要的位置。

您的功能在哪里?请将其添加到问题中,而不是添加到注释中。如果它们确实隐藏,如“显示:无”,则您无法单击它们。你是不是更倾向于一个可折叠的模型?我编辑原始问题是为了更明确地提问。@CCanada我编辑这篇文章是为了更直接地展示如何完成你想做的事情。应该做一些小的调整。你能给我看一把小提琴/这个工作的例子吗?@CCanada这会让你失去一个宝贵的学习机会。如果您有任何问题,我很乐意提供帮助。这就是为什么我问,以便我可以看到所做的更改并进行比较。我不是要求有人帮我做这件事,只是让我走完每一步,因为我对这件事很陌生。不过还是要谢谢你。