我加载CSS:
$('head').append('<link rel="stylesheet" href="style2.css" type="text/css" />');
它工作,但我有一个功能,需要在应用CSS后运行,我不想使用setInterval.
我怎样才能做到这一点 ?
解决方法:
一个解决方案,如果您可以访问正在加载的css文件,
是使用transitionend
事件,并从您的CSS激活持续时间设置为0.1的转换.
像这样,你确定CSS已经计算好了.
style2.css
body{opacity:1;}
的index.html
<style>
body{transition : opacity 0.1s linear; opacity:.9};
</style>
<body>
...
<script>
document.body.addEventListener('transitionend', function(){
alert('done');
}, false);
$('head').append('<link rel="stylesheet" href="style2.css" type="text/css" />');
编辑:
对于需要js功能的(没有外部文件):https://jsfiddle.net/t0akchuw/