我的javascript to removeClass + addClass当点击仅适用于Chrome但不适用于Firefox或IE
出于某种原因,我在点击链接时删除/添加课程的javascript只适用于Google Chrome。 在Firefox上,它执行一次,然后不重复。 在IE上,它直接完全没有工作。 (最新版本的Firefox和Chrome,IE 11)
如果有人能指出我正确的方向,那将非常感激!
这个问题的简单JSFiddle: http : //jsfiddle.net/UDxtM/
这是javascript:
$('[data-toggle="tab"]').click(function() { $('.tab-pane').removeClass('animated flipInY'); $('.tab-pane').addClass('animated flipInY'); });
一些虚拟内容:
编辑#1: CSS转换来自animate.css http://daneden.github.io/animate.css/ 。 如果我只是在没有javascript的情况下使用它们,它在现代Web浏览器上完美运行。 我不认为CSS是问题。
编辑#2:显然它适用于其他人的IE10和IE11,但不是我的。 这仍然留下了Firefox只播放一次代码的问题。
您正在删除类并在之后立即再次添加它们 – 因此,如果出于性能优化原因,浏览器决定不在这两个操作之间进行重新绘制,则根本没有可见的效果。
通过使用一个小的超时“去耦合”再次添加类,它似乎也在FF中工作:
$('[data-toggle="tab"]').click(function () { $('.tab-pane').removeClass('animated flipInY'); setTimeout(function () { $('.tab-pane').addClass('animated flipInY'); }, 10); });