今天遇到了奇怪的问题,我动态给一个div赋值css类,然后从里面去这个类里的属性,但获取不到,(前面有动态加载css文件)
解决办法:用setTimeout(function(){})把代码块包起来
原因:在我动态添加css类(addclass添加)后直接css(properties)获取,我忽略了前面还有动态加载css文件(根据select来加载不同的css文件)。动态加载css文件里会有document.createElement(xxx),这个创建是异步的,会导致我已经去获取了但css文件还没有创建加载完成而获取的值为空,所以需要setTimeout函数,setTimeout函数会根据顺序来执行所有的异步,我的setTimeout在最后,所以最后执行,能够获取到值。