Javascript window.onload没有解雇

时间:2014-12-12 08:57:29

标签: javascript onload

我正在尝试编写一个强制元素具有样式display = block的javascript函数。 目前它被另一条javascript设置为display = none。

我认为window.onload可以解决问题,因为代码不会被之前的JS覆盖。以下代码用于工作,现在该功能甚至无法触发。

任何人都可以帮忙吗?

          window.onload =  function ()   // It sets the class of the unordered list when the page has been loaded.
            {
               ul.style.display = "block!important";   // Display all the child items
             }

3 个答案:

答案 0 :(得分:1)

您需要在事件侦听器的回调中获取ul,因为如果您之前执行此操作,则DOM未完全加载。

document.addEventListener("DOMContentLoaded", function(event) { 
    var ul = document.getElementById("my-ul");

    ul.style.display = "block!important";
});

如果您想要更多的跨浏览器解决方案,可以使用JQuery:

$(document).ready(function() {
    $('#my-ul').css('display', 'block!important');
});

您可以在css中执行此操作:

#my-ul {
    display: block!important;
}

您的ul应该是这些解决方案的形式:

<ul id="my-ul">

答案 1 :(得分:1)

你不能那样使用ul.style.display

使用document. getElementsByTagName('ul').style.display = "block !important"

答案 2 :(得分:0)

window.onload = function()...正在定义一个函数。使用window.onload()关闭函数后,只需调用该函数即可。几个小时后为我工作