Javascript Jquery切换函数-内容更新后的触发器/按钮

Javascript Jquery切换函数-内容更新后的触发器/按钮,javascript,jquery,toggle,Javascript,Jquery,Toggle,我一直在努力解决这个问题,我相信一定有一个简单的解决办法!我有一个简单的按钮,可以触发Jquery切换“显示/隐藏”,效果很好: JS $(文档).ready(函数(){ //使用类msg_body隐藏所有元素 $(“.reveal-info-1”).hide(); //使用类msg_body切换组件网 $(“.discover btn”)。单击(函数(){ $(this).next(“.reveal-info-1”).slideToggle(500); }); }); 我的HTML看起来像

我一直在努力解决这个问题,我相信一定有一个简单的解决办法!我有一个简单的按钮,可以触发Jquery切换“显示/隐藏”,效果很好:

JS


$(文档).ready(函数(){
//使用类msg_body隐藏所有元素
$(“.reveal-info-1”).hide();
//使用类msg_body切换组件网
$(“.discover btn”)。单击(函数(){
$(this).next(“.reveal-info-1”).slideToggle(500);
});
});
我的HTML看起来像这样(有很多内容,所以我简化了它):


内容在这里

移动按钮似乎会破坏一些东西,所以我猜在代码流中,它必须出现在切换内容之前

发生这种情况的唯一原因是您正在使用jQuery
.next
,它查找下一个相邻的HTML元素

更改顺序并将该行更改为
.prev
,它将被修复:

$(文档).ready(函数(){
//使用类msg_body隐藏所有元素
$(“.reveal-info-1”).hide();
//使用类msg_body切换组件网
$(“.discover btn”)。单击(函数(){
$(此).prev(“.diseal-info-1”).slideToggle(500);
});
});

内容在这里

移动按钮似乎会破坏一些东西,所以我猜在代码流中,它必须出现在切换内容之前

发生这种情况的唯一原因是您正在使用jQuery
.next
,它查找下一个相邻的HTML元素

更改顺序并将该行更改为
.prev
,它将被修复:

$(文档).ready(函数(){
//使用类msg_body隐藏所有元素
$(“.reveal-info-1”).hide();
//使用类msg_body切换组件网
$(“.discover btn”)。单击(函数(){
$(此).prev(“.diseal-info-1”).slideToggle(500);
});
});

内容在这里


太好了,非常感谢您的帮助,在交换代码后,将“下一步”替换为“上一步”效果很好(删除对“上一步”和“下一步”的所有引用似乎不会保持Revead div的打开状态(它只是扩展和收缩))。太好了,非常感谢您的帮助,将“下一步”替换为“上一步”在交换代码后工作得很好(删除对“prev”和“next”的所有引用似乎并不能保持revead div的打开状态(它只是扩展和收缩))。
<script type="text/javascript">
 $(document).ready(function() {
 //hide the all of the element with class msg_body
  $(".reveal-info-1").hide();
  //toggle the componenet with class msg_body
   $(".reveal-btn").click(function(){
    $(this).next(".reveal-info-1").slideToggle(500);
   });
  });
</script>
<div class="reveal-1">
 <div class="reveal-btn"><input type="button" value="Read More" id="reveal-btn-1" class="reveal-btn" /></div>
 <div class="reveal-info-1">
  <p>Content goes here</p>
 </div
</div>