【发布时间】:2014-01-23 10:29:28
【问题描述】:
我已经阅读了关于 Bootstrap 的 fade 类的several similar questions SO,但它们似乎都没有解决我的问题。
我知道,当您将 .in 类添加到已经具有 .fade 类的元素时,Bootstrap 3 中的淡入淡出动画通过在 0 和 1 之间切换 opacity 来工作。在处理 HTML 中已经存在的元素(例如,this JS Fiddle demo)时,这对我来说很好。
问题在于,当使用 Javascript 动态创建元素时,似乎不会发生转换。例如,以下代码将创建并显示警报,但不会发生 CSS 转换(在 Chrome 和 Firefox 中测试)。如果我在开发工具中手动添加和删除 in 类,淡入淡出效果很好:
$('<div class="alert fade">This is a test</div>')
.appendTo($someElement)
.addClass('in');
显然.addClass() 函数正在工作,因为警报获取in 类并显示,但没有发生转换。知道如何让它工作吗?
有关可编辑的演示,请参阅this pen on CodePen。
【问题讨论】:
-
@zessx 为什么用
twitter-bootstrap-2重新标记?我想与这个主题相关的 2 和 3 之间没有太大区别,但我肯定使用 3。 -
你说得对,我的重新标记太快了,并且基于链接的 JSFiddle。我删除了twitter-bootstrap-3,因为框架版本不影响结果。
标签: jquery twitter-bootstrap css-transitions fade