在IE7中加载窗口

window.onload in IE7

本文关键字:窗口 加载 IE7      更新时间:2023-09-26

我有这个javascript在chrome中完美运行,但在IE7上不起作用:

点击 id icsave ,不起作用。什么也没发生,icsave正常保存页面

window.onload = function() {
    if ($('#MODE').val() != 'U') {
        $('#MOD_BY_JS').val( % 1);
        clik('#ICSave')
    }
};
function clik(element) {
    try {
        document.getElementById(element).click();
    }
    catch (e) {
        var evt = document.createEvent("MouseEvents");
        evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
        var cb = document.getElementById(element);
        cb.dispatchEvent(evt);
    }
};​

由于多种原因,window.onload可能不会被执行。

  • 页面上的某些资源未加载(图像),因为window.onload仅在加载所有资源后触发。
  • 有些东西正在覆盖window.onload
  • 您在其他地方遇到JavaScript错误

我给你的建议是,既然你使用的是jQuery,那就使用:

$(document).ready(function(){ /* initialize stuff */});

或者如果你真的需要onload

$(window).load(function(){ /* initialize stuff */});

对于您的示例,我建议您使用 $(document).ready(...) 方法,因为在我看来,一旦 dom 准备就绪,即 ready 事件触发时,您的脚本就会工作。