Jquery 隐藏元素中的注释在出现后被拉伸

Jquery 隐藏元素中的注释在出现后被拉伸,jquery,html,css,disqus,Jquery,Html,Css,Disqus,我正在尝试设置我自己的tumblr主题,我几乎做到了,但这一直困扰着我很长一段时间。基本上,我想对每一篇文章都进行讨论,但我想把它隐藏起来。因此,当有人点击时,我们可以说“显示整个讨论”,它出现了 我用简单的css隐藏了整个论文讨论: display: none; jquery: $('.disqus').click(function() { //shows discussion $("#disqus_thread").animate({ height: 'show', opacity: 's

我正在尝试设置我自己的tumblr主题,我几乎做到了,但这一直困扰着我很长一段时间。基本上,我想对每一篇文章都进行讨论,但我想把它隐藏起来。因此,当有人点击时,我们可以说“显示整个讨论”,它出现了

我用简单的css隐藏了整个论文讨论:

display: none;
jquery:

$('.disqus').click(function() {
//shows discussion
$("#disqus_thread").animate({ height: 'show', opacity: 'show' }, 'slow');
//hides link
$(".disqus").animate({ height: 'hide', opacity: 'hide' }, 'slow'); 
});

当我在加载Discus插件之前单击时,它工作正常。但是,如果我在插件加载后单击,它将以700px的速度伸展并保持这种状态。到目前为止,我无法找到原因。

显示元素:没有一个没有定义的宽度-因为它们不是页面布局的一部分。这可能会让Discus感到困惑,因为它试图将自己插入到页面中

要显示的多个备选方案:无(元素不可见但仍存在于布局中)如下所示:

在我看来,更好的解决方案是在需要时加载disqs,而不是让它加载然后隐藏它。当用户单击“显示整个讨论”时,您可以使用jQuery.getScript(),或者在不使用jQuery的情况下,使用document.createElement('script')将disqs脚本标记添加到DOM中

关于动态加载discus的博客文章如下:


谢谢!第二个解决方案非常适合我!