javascript之解决IE下不渲染的bug_javascript技巧

WBOY
リリース: 2016-05-16 19:12:00
オリジナル
1114 人が閲覧しました

有时候,你会发现,在一些JS应用中,涉及到CSS的重新渲染(即页面样式需要更新)的话,IE死活不变。
此时你需要让IE重新渲染一下:


function handleIEhasLayout(){
  //trigger re-rendering
  document.body.style.zoom = 1.1;
  //restore it
  document.body.style.zoom = '';
}


有问题,记得执行一下handleIEhasLayout,万事OK。

原文:http://realazy.org/blog/2007/04/02/ie-haslayout-rerendering/

引用
IE5 似乎没有这个问题,IE6 有,我的 IE7 还是 beta2,版本号是 7.0.5346.5,也没有这个问题,一个朋友用的 beta3 版本号是 7.0.5450.4 居然说也有问题,我没有测试,用这个版本 IE 的朋友可以帮忙看看。


Dnew.cn 注:用这段代码似乎更好一些:

function reflow(){
var b = document.body;
b.style.zoom = b.style.zoom=="1"?"100%":"1";
}



使用style.zoom在某些情况下还会出现不能全部渲染的问题,比如页面内容很少,没有占满屏幕。
(shiweiwei97)的方法是:

document.body.style.display = “none”;
document.body.style.display = “”;

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート