jQuery CSS 在其后面的命令之后执行

标签 jquery css

我有一个容器和一个占容器宽度 100% 的内部 div。我希望容器立即展开,但将内部 div 保持在当前尺寸,然后使用 CSS 过渡逐渐展开。这是原文JS Fiddle no. 1 .

因为这似乎不起作用(为什么?),即使应该立即应用 CSS,我尝试使用此 JS Fiddle no. 2 来延迟容器上的 addClass ,这也不起作用。

最后,在为前一个 fiddle 设置更长的延迟后,它的工作时间为 1000 毫秒,而不是 100 毫秒。所以.css()在1000ms后生效,但在100ms后不生效?!

谁能告诉我为什么 .css() 函数的行为就像异步工作一样?

最佳答案

要使 #1 工作,您需要此代码,将 .css()setTimeout 中取出:

$('.inner').css({
  width: $('.inner').width() + 'px',
  height: $('.inner').height() + 'px'
});
setTimeout(function() {
  $('.container').addClass('big');
}, 1000);

您已将所有内容封装在 setTimeout 中,其中 1000 毫秒,而不是 $(function () {});

fiddle :http://jsfiddle.net/m7k9mre8/

关于jQuery CSS 在其后面的命令之后执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32966202/

相关文章:

css - 是否可以将不同的样式应用于word中的不同字母?

html - 如何将页面从顶部拉伸(stretch)到底部?

javascript - 如何更改单击时按钮的样式并单击不同的按钮,应将其更改为默认值

jquery - 使用自定义函数扩展 jQuery 指定对象

javascript - 菜单代码不起作用

javascript - 切换 Font Awesome 图标(如果处于事件状态)?

javascript - 根据普通 javascript 中的父 div 调整子视频元素的大小

html - 为什么我的 CSS 不合作?

css - 无法将 div 定位在其他 div 中

Javascript 和 JQuery 问题 - 抓取 YouTube 数据并将其写入页面