【问题标题】:jQuery fadeIn fadeOut with clickjQuery 淡入淡出点击
【发布时间】:2009-12-18 20:27:40
【问题描述】:

我正在尝试在单击另一个 div 时创建一个 div fadeIn,并在单击另一个 div 时再次创建 fadeOut(这将是关闭按钮),但我的代码不起作用,是我忘记了什么吗?

这是 CSS:

body{
    margin: 0;
    padding: 0;
    text-align: center;
    background-color:#f0f2df;
}

#container{
    border: solid 1px #f0f2df;
    background-color:#f0f2df;
    text-align: left;
    margin: auto;
    width: 939px;
    height: 570px;
    top:41px;
    position:relative;
}
#contact_form{
    display: none;
    background-image:url(../images/bg.png);
    width: 703px;
    height: 379px;
    position:absolute;
    left:236px;
    bottom:34px;

}
.contact_close{
    display:none;
    background-image:url(../images/close.png);
    width:17px;
    height:17px;
    position:absolute;
    right:5px;
    top:135px;
}

HTML:

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="css/main.css" />
<title>test</title>
<script type='text/javascript' src='js/jquery.js'></script>
<script type='text/javascript' src='js/click.js'></script>
</head>

<body>
    <div id="container">
        <div class="button_contact"></div>
        <div id="contact_form">
        <div class="button_close"></div></div>
</div>
</body>
</html>

和 JavaScript

$(document).ready(function(){ 

 $("button_contact").click(function() { 
    $("#contact_form").fadeIn("slow");
});

 $(".contact_close").click(function() { 
      $("#contact_form").fadeOut("slow"); 
    });
 });

【问题讨论】:

  • 你可以使用fadeToggle

标签: javascript jquery click fadein fadeout


【解决方案1】:

你需要“。”在 button_contact 之前

$(document).ready(function(){ 
  $(".button_contact").click(function() { 
    $("#contact_form").fadeIn("slow");
  });

  $(".contact_close").click(function() { 
    $("#contact_form").fadeOut("slow"); 
  });
});

【讨论】:

  • 哎呀,这太尴尬了,我什至仔细检查了它!哦,谢谢你好心的先生。
【解决方案2】:

jQuery 还有一个.toggle() 函数,允许您在单击元素时在彼此之间传递toggled 的多个函数。

http://api.jquery.com/toggle/ 一个不错的功能,因为您可以添加任意数量的功能。

$(document).ready(function(){ 
    $(".button_contact").toggle(function() { 
        $("#contact_form").fadeIn("slow");
    },
    function() { 
        $("#contact_form").fadeOut("slow"); 
    });
});

【讨论】:

    【解决方案3】:

    您在按钮关闭之前忘记了.

    $(".button_contact")....
    

    应该可以。

    【讨论】:

      【解决方案4】:

      fadeIn 按钮上的选择器有点偏离。您的原始代码匹配 node namebutton_contact 的元素,而不是 classbutton_contact

      试试:

      $(".button_contact").click(function() { 
          $("#contact_form").fadeIn("slow");
      });
      

      【讨论】:

        【解决方案5】:

        $("button_contact").click(function() { 应该是

        $(".button_contact").click(function() {
        

        【讨论】:

          【解决方案6】:

          试试这个:

          $(document).ready(function(){ 
          
           $(".button_contact").click(function() { 
               $("#contact_form").fadeIn("slow");
           });
          
           $(".button_close").click(function() { 
            $("#contact_form").fadeOut("slow"); 
            });
           });
          

          【讨论】:

            【解决方案7】:

            很抱歉,如果单击的链接是对应于另一个 DIV 的 ajax 链接,这种语法会起作用吗?我似乎无法让它工作!

            <script type="text/javascript" src="js/jquery-ajaxLink.js"></script>
                <script type="text/javascript">
                    $(document).ready(function() { 
                    $(".ajaxLink").ajaxLink();
                    $(".ajaxlink").click(function() { 
                 $("#content").fadeIn("slow");
              });
             });
                </script>
            
            
                        <ul id="mainNav">
                <li> <a class="ajaxLink" href="test1.htm">Who We Are </a></li>
                <li> <a class="ajaxLink" href="test2.htm">Benefits</a></li>
                <li> <a class="ajaxLink" href="test2.htm">Commercial Terms</a></li>
                <li> <a class="ajaxLink" href="test3.htm">Property Types</a></li>
                <li> <a class="ajaxLink" href="test3.htm">Commercial Info</a></li>
                        </ul>
            
            <div id="content"></div>
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2014-03-27
              • 2012-09-17
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2012-12-22
              相关资源
              最近更新 更多