不清楚你到底想要实现什么,但这是我过去成功使用的一种方法,可以迫使浏览器重新绘制,也许它会对你有用。// in jquery$('#parentOfElementToBeRedrawn').hide().show(0);// in plain jsdocument.getElementById('parentOfElementToBeRedrawn').
style.display = 'none';document.getElementById('parentOfElementToBeRedrawn').style.display = 'block';
如果这个简单的重绘不起作用,你可以试试这个。它在保证重绘的元素中插入一个空文本节点。var forceRedraw = function(element){
if (!element) { return; }
var n = document.createTextNode(' ');
var disp = element.style.display; // don't worry about previous display style
element.appendChild(n);
element.style.display = 'none';
setTimeout(function(){
element.style.display = disp;
n.parentNode.removeChild(n);
},20); // you can play with this timeout to make it as short as possible}