[英]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.