我有一个包含 3 个部分的表格。在表单的开头,后两部分使用 css 隐藏。一旦用户按下第一部分中的下一个按钮,第二部分应该向下滑动到 View 中,但是目前向下滑动的动画开始然后立即重置。有谁知道这个问题吗?
Jquery 脚本:
<script>
$(document).ready(function(){
$("#buttonToSecondaryDetailsSection").click(function(){
$("#secondaryDetailsForm").slideDown("slow");
});
$("#buttonToCommentsSection").click(function(){
$("#commentsDetailsForm").slideDown("slow");
});
});
</script>
有问题的 CSS:
#secondaryDetailsForm, #commentsDetailsForm {
display: none;
}
编辑:我之前尝试使用 .show() 而不是 slideDown() 并且该部分在再次消失之前只是闪烁。
编辑 2:e.preventDefault();成功了。很抱歉这个乱七八糟的问题,试图获得一个使用 jsfiddle 的示例,但它在左右和中间抛出错误。
最佳答案
这可能是您问题的解决方案。考虑到您的描述,我想您的按钮所做的比他们应该做的更多,实际发生的是页面刷新到原始状态。你能试试这个吗?
$(document).ready(function(){
$("#buttonToSecondaryDetailsSection").click(function(e){
e.preventDefault();
$("#secondaryDetailsForm").slideDown("slow");
});
$("#buttonToCommentsSection").click(function(e){
e.preventDefault();
$("#commentsDetailsForm").slideDown("slow");
});
});
您的代码的不同之处在于将 e 作为事件参数,然后停止按钮发生的任何更多操作。如果我对问题的描述是实际发生的,那么它应该适用于此更改。
关于javascript - Jquery slideDown() 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26843396/