1

我有 3 个可切换 Fade() 3 div 的按钮。当我单击#link1、div1 fadeIn() 等时。我的目标是如果这些 div 中的任何一个淡入,则调整 #map_canvas 的大小,如果不可见,则调整为默认值(fadeOut())。

    <a id="link1"></a>
    <a id="link2"></a>
    <a id="link3"></a>

    <div id="map_canvas"></div>

    <div id="wrapper">

   <div id="div1" class="hideMe"></div>
   <div id="div2" class="hideMe"></div>
   <div id="div3" class="hideMe"></div>

   </div>

编辑:fadeIn 和fadeOut 的jQuery。

 $(document).ready(function() {

     $('#div1').hide();
     $('a#link1').click(function() {

 if (!$('#div1').is(':visible')) 
   {
     $('.hideMe').fadeOut("slow");
     $('#map_canvas').animate({height:"370px"}, 500);
    }

     $('#div1').fadeToggle("slow");

  });
4

1 回答 1

0

好吧,据我所知,我实现了一个示例。我只做了前两个按钮,您可以使用前两个按钮作为示例来实现第三个按钮。

注意:可以合并 jQuery,以便只有一个单击功能,但是在学习时将其分开很有帮助,因此更易于理解。

HTML

<a id="link1">link1</a>
<a id="link2">link2</a>
<a id="link3">link3</a>

<div id="map_canvas"></div>

<div id="wrapper">

<div id="div1" class="hideMe">div1</div>
<div id="div2" class="hideMe">div2</div>
<div id="div3" class="hideMe">div3</div>

Javascript/Jquery

$(document).ready(function() {
        $('.hideMe').hide();
        $('#link1').click(function() {
          $('.hideMe').not('#div1').hide();
          $('#div1').fadeToggle("slow",function(){
              if ($('#div1').is(':visible')) 
              { 
                  $('#map_canvas').animate({height:"370px"}, 500);
              }
              if(!$('.hideMe').is(':visible')){
                  $('#map_canvas').animate({height:"0px"}, 500);
              }
          });
        });
        $('#link2').click(function() {
            $('.hideMe').not('#div2').hide();
            $('#div2').fadeToggle("slow",function(){
              if ($('#div2').is(':visible')) 
                  {
                    $('#map_canvas').animate({height:"370px"}, 500);
                  }
              if(!$('.hideMe').is(':visible')){
                  $('#map_canvas').animate({height:"0px"}, 500);
              }
            });
          });
    });

CSS

       #map_canvas {
        border: 1px solid black;
       }
       a {
           cursor:pointer;
       }

小提琴可以在这里找到

http://jsfiddle.net/qYys7/

于 2013-10-03T20:15:36.780 回答