加载窗口上的jQuery addClass在IE中不起作用

时间:2017-02-17 15:03:35

标签: jquery internet-explorer

我无法在IE(11)中使用此代码,我在这里做错了什么? 我需要设置TimeOut吗?



jQuery(document).ready(function($) {
	// Smooth load body content
	$(window).on('load',function() {
			$('body').addClass('loaded');
	});
});

body {
  opacity: 0;
  color: black;
  background-color: white;
  -webkit-transition: all 2s ease; /* Safari */
  transition: all 2s ease;
}
body.loaded {
  opacity: 1;
}

<html>
<body>
  <h1>test</h1>
  <img src="http://placehold.it/400x400">
  
  <script type="text/javascript" language="Javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</body>
</html>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:2)

您可以添加一个事件监听器,然后该浏览器可以在浏览器中运行。 (经过IE11和Chrome测试)。

if(document.readyState === 'complete') {
    loadPage();
 } else {
    document.addEventListener('readystatechange', function(){
        if(document.readyState === 'complete')
            loadPage();
            }
    )};

function loadPage(){
    $('body').addClass('loaded');
}

JsFiddle demo