Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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 toggle()通过隐藏其他DIV对DIV进行切换_Jquery_Function_Click_Toggle_Slidetoggle - Fatal编程技术网

jquery toggle()通过隐藏其他DIV对DIV进行切换

jquery toggle()通过隐藏其他DIV对DIV进行切换,jquery,function,click,toggle,slidetoggle,Jquery,Function,Click,Toggle,Slidetoggle,我使用以下代码通过单击块标题来切换div。我需要使相应的div出现在单击相应的块标题时。这些div也应该自己切换 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> &l

我使用以下代码通过单击块标题来切换div。我需要使相应的div出现在单击相应的块标题时。这些div也应该自己切换

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
    a { color:#C30; text-decoration:none; }
    #banner { width: 930px; background-color:#666; height: 500px; }
    #banner ul { list-style:none; padding: 40px; }
    #banner ul li { margin: 10px 0 0 0; }
    #banner ul li a { display:inline-block; border:5px solid #fff; background-color:#FC9; padding:10px; font: bold italic 18px Verdana; }
    .sliderContent { border:5px solid #fff; background-color:#FC9; padding:10px; min-height: 150px; display:none; margin-top:5px; }
    .sliderContent a { padding:0 !important; border:none !important; }
    .sliderContent a.closeButton { background:url(icon_modal_close.png) no-repeat 0 0; float:right; height:30px; width:30px; text-indent:-999px; }
</style>
<script type="text/javascript" language="javascript" src="jquery.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $('a.box').click(function(event){
            event.preventDefault();
            $(this).next('.sliderContent').toggle(function() {
                $('.sliderContent').not(this).hide();
            });
        });
        $('.closeButton').click(function(){
            $(this).parent().hide();
        });
    });
</script>
</head>
<body>
<div id="banner">
    <ul>
        <li>
            <a href="#" class="box">Design</a>
            <div class="sliderContent">
                <a class="closeButton" href="#">Close</a>
                Lorem Ipsum Doner
            </div>
        </li>
        <li>
            <a href="#" class="box">Development</a>
            <div class="sliderContent">
                <a class="closeButton" href="#">Close</a>
                Lorem Ipsum Doner
            </div>
        </li>
        <li>
            <a href="#" class="box">Graphics</a>
            <div class="sliderContent">
                <a class="closeButton" href="#">Close</a>
                Lorem Ipsum Doner
            </div>
        </li>
    </ul>
</div>
</body>
</html>
现在的问题是DIV hide函数。切换功能先执行,然后隐藏功能进入画面。它使我的布局扭曲,因为屏幕上同时显示两个div

这应该是像div将首先隐藏,然后当前div将出现

请帮我做同样的事

谢谢 Lokesh Yadav

试试这个:

$(document).ready(function() {
        $('a.box').click(function(event){
            event.preventDefault();
            var sliderContent = $(this).next('.sliderContent');
            $('.sliderContent').not(sliderContent).hide();
            sliderContent.toggle();
        });
        $('.closeButton').click(function(){
            $(this).parent().hide();
        });
    });
这里是jsiddle:

试试这个:

$(document).ready(function() {
        $('a.box').click(function(event){
            event.preventDefault();
            var sliderContent = $(this).next('.sliderContent');
            $('.sliderContent').not(sliderContent).hide();
            sliderContent.toggle();
        });
        $('.closeButton').click(function(){
            $(this).parent().hide();
        });
    });

这里的jsiddle:

就像charm:非常感谢你救了我的命alex:客户机的要求改变了,现在我要做的是,如果我单击块,那么框本身就会被扩展。我移除了li块底部的边框,而不是为该框设置动画。请建议我正确的方法,使它像块本身得到检查点击。你可以查看我所做的实时代码,它的工作原理像charm:非常感谢你救了我的命alex:客户的要求改变了,现在我想做的是,如果我单击块,那么框本身就会展开。我移除了li块底部的边框,而不是为该框设置动画。请建议我正确的方法,使它像块本身得到检查点击。你可以查看我所做的实时代码