简体   繁体   English

使用 jQuery 显示/隐藏 Div

[英]Showing / Hiding Div With jQuery

I'm using toggle() but it's not working.我正在使用toggle()但它不起作用。 My script is in the footer:我的脚本在页脚中:

$(document).ready(function(){
   $("product-suggestion-form-container").click(function(){
      $("form-div-top").toggle();
   });
});

or I've also tried addClass() :或者我也尝试过addClass()

$(document).ready(function(){
   $("product-suggestion-form-container").click(function(){
      $("form-div-top").addClass("active");  
         // $("form-div-top").toggle();
   });
});

Basically I'm just trying to toggle between showing and hiding the form divs.基本上我只是想在显示和隐藏表单 div 之间切换。

When product-suggestion-form-container is clicked on, form-div-top should show.单击product-suggestion-form-container时,应显示form-div-top

When contact-us-form-container is clicked on, form-div-bottom should show.单击contact-us-form-container时,应显示form-div-bottom

Then they should hide when those divs are clicked on again.然后,当再次单击这些 div 时,它们应该隐藏。

Shouldn't clicking on product-suggestion-form-container cause form-div-top to become active and therefore to display: flex ?不应该单击product-suggestion-form-container导致form-div-top变为活动状态并因此display: flex Not sure why nothing's happening.不知道为什么什么也没发生。

I was just getting the jQuery from here , but ideally I'd like to add a smooth transition and whatever other best practices you might suggest for doing this.我刚从这里得到 jQuery ,但理想情况下,我想添加一个平滑过渡以及您可能建议的任何其他最佳实践。

 $(document).ready(function(){ $("product-suggestion-form-container").click(function(){ $("form-div-top").addClass("active"); // $("form-div-top").toggle(); }); });
 .form-div-outer { margin: 10px 0; }.form-div-top, .form-div-bottom { background-color: #f8f7f7; border: 1px solid #c6c6c6; } /*initial display*/.form-div-inner-top { display: none; }.form-div-inner-bottom { display: none; }.form-div-inner-top:active { display: flex; flex-direction: column; padding: 20px; }.form-div-inner-bottom:active { display: flex; flex-direction: column; padding: 20px; }.form-input { margin: 10px 0; padding: 5px; border: none; background-color: #ffffff; width: 100%; }
 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <div class="form-div-outer"> <div class="product-suggestion-form-container"> <span class="form-title">Product Suggestion Form</span> <span class="dropdown-arrow"><i class="fas fa-caret-down"></i> </span> </div> <div class="form-div-top"> <form class="form-div-inner-top"> <span class="input-group input-group-name"> <input type="text" placeholder="Name" class="form-input" required></input> </span> <span class="input-group input-group-email-address"> <input type="text" placeholder="Email Address" class="form-input" required></input> </span> <span class="input-group description-of-product-desired"> <input type="textarea" placeholder="Description of product desired" class="form-input" required></input> </span> </form> </div> </div> <div class="form-div-outer"> <div class="contact-us-form-container"> <span class="form-title">Contact Us Form</span> <span class="dropdown-arrow"><i class="fas fa-caret-down"></i> </span> </div> <div class="form-div-bottom"> <form class="form-div-inner-bottom"> <span class="input-group input-group-name"> <input type="text" placeholder="Name" class="form-input" required></input> </span> <span class="input-group input-group-email-address"> <input type="text" placeholder="Email Address" class="form-input" required></input> </span> <span class="input-group input-group-contact-reason"> <div class="contact-reason-container"> <ul class="radiolist"> <li> <input class="radio" type="radio"><label>Order question</label> <input class="radio" type="radio"><label>Website feedback</label> <input class="radio" type="radio"><label>Trouble finding product</label> </li> </ul> </div> </span> </form> </div> </div>

It seems you have forgot .看来你忘记了. s in your code to access the data. s 在您的代码中访问数据。

$(document).ready(function(){
 $(".product-suggestion-form-container").click(function(){
  $(".form-div-top").toggle();
 });
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM