问题是这样子的,如果我在页面定义了一个200(W)x100(H)的p,然后再通过js来修改这个p的宽度为100,浏览器加载该页面的时候,理论上我们应该是先看到一个200x100的p,然后再一闪变成了一个100x100的p,那么现在的问题是,我想实现的是浏览器加载到完成的这一个过程,我始终看到的是100x100的p,而不是由200x100的p一闪变成一个100x100的p,请问各位这个应该如何实现,有没有一些比较靠谱的做法呢?谢谢!!
<!DOCTYPE html>
<html>
<head>
<title></title>
<style>
#p1 { width: 200px; height: 100px; background: red; }
</style>
</head>
<body>
<p id='p1'></p>
<script>
window.onload = function() { document.querySelector('#p1').style.width = '100px'; };
</script>
</body>
</html>
监听document的ready事件,在DOM树加载完成但是还没有渲染的时候,执行JS脚本
那么等JS执行完成后,p的style已经变化,渲染的时候就按你最新的大小显示
使用jQuery的代码
你可以先隐藏,改好了再显示
如果你想看到变化过程,你可以延迟一会在执行