在IE中加载窗口后的jquery加载方法

时间:2013-06-28 10:51:53

标签: jquery internet-explorer load

jQuery(window).load()在IE中无法正常工作,特别是在IE 8及以下版本中。完全加载窗口后我需要调用一个方法。

但是在IE中,窗口显示在执行jQuery(window).load()中给出的函数之后。

.
.
.
.
</body>
<script language="javascript">
jQuery(window).load(function(){
    renderEditNView();
});
</script>
</html>

即使加载方法中的警报显示在窗口加载之前。我该如何解决?

5 个答案:

答案 0 :(得分:2)

试试这个我希望它也适用于你的浏览器

$(window)[0].onload = (function(){alert('done');});

javascript:

window.onload = (function(){alert('done');});

注意:即使您的代码正在使用chrome和jQuery 1.9.1!

答案 1 :(得分:1)

使用任何方法调用内部 $(function()

<script type="text/javascript">
    $(function(){
       alert('Alert box after page Completely Ready');
       renderEditNView();
    });

    function renderEditNView(){
         alert('Render Edit and View after Page Competely ready');
    }
</script>

答案 2 :(得分:1)

参见文件http://api.jquery.com/load-event/

通常,没有必要等待所有图像完全加载。如果代码可以更早地执行,通常最好将它放在发送到.ready()方法的处理程序中。

答案 3 :(得分:1)

尝试将script代码放在body标记内(例如最后)。如果renderEditNView正在更改DOM ...

,IE可能会遇到一些问题

有关详细信息,请参阅此question

答案 4 :(得分:0)

我测试了所有提供的响应并且它们都没有工作,我试图在页面加载后使用$("#element").outerHewight();获取outerHeight并且总是返回0因为我需要知道之后的高度填写数据。我测试的是:

<script type="text/javascript">
   // it is no working
   window.onload = (function(){alert($("#myelement").outerHeight());});

   // It is no workking
   $(window)[0].onload = (function(){alert($("#myelement").outerHeight());});

</script>

如果我没弄错,$(“#myelement”)。outerHeight(),应该在页面加载后返回一些值,为什么返回0?

出于这个原因,我认为这两个选项都不对。

我无法使用插件。

我正在使用Internet Explorer 8.(我不能使用导航器)

我在这个问题中写道,因为它与我们正在寻找的非常相似。